最基本的微机硬件系统概要

上传人:hs****ma 文档编号:513853073 上传时间:2023-01-20 格式:DOCX 页数:11 大小:182KB
返回 下载 相关 举报
最基本的微机硬件系统概要_第1页
第1页 / 共11页
最基本的微机硬件系统概要_第2页
第2页 / 共11页
最基本的微机硬件系统概要_第3页
第3页 / 共11页
最基本的微机硬件系统概要_第4页
第4页 / 共11页
最基本的微机硬件系统概要_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《最基本的微机硬件系统概要》由会员分享,可在线阅读,更多相关《最基本的微机硬件系统概要(11页珍藏版)》请在金锄头文库上搜索。

1、计算机由运算器、控制器、存储器、输入设备和输出设备五部分组成。一个最基本的微机硬件系统由微处理器、存储器(简称主存或内存)、I/O接口、输入/ 输出设备 5 个基本的功能模块组成.(a)半加器符号Cb)全加器符号【例 3.1】程序清单指R0LDA6H把(R6)装入A去令R1SUB7H从(A)减去(R7)区R2JAM5H(A)=负,则转移至R5R3JAZ5H(A)=0,则转移至R5R4JMP1H无条件转移至 R1R5 HLT数R6 25(10)据区R7 9(10)指令执行结果R0LDA6HA中的内容=25(10)R1SUB7HA 中的内容=25-9=16(10)R2JAM5H因为(A)工负,所以

2、不转移R3JAZ5H因为(A)M0,所以不转移R4JMP1H无条件转移至 R从 R1 起再执行第 2 次:R1SUB7HA中的内容=16-9=7(10)R2JAM5H因为(A)工负,所以不转移R3JAZ5H因为(A)M0,所以不转移R4JMP1H无条件转移至 R1从 R1 起再执行第 3 次:R1SUB 7HA中的内容=7-9=-2(10)R2JAM 5H因为(A)=负,所以转移至R5R5HLT停机这个程序可以理解为求(R6)宁(R7)的除法运算。这里是25宁9,除的结果应得商为2,余 数为7。程序循环运行的次数即为商,余数即为第2次执行后A中的内容。【例 3.2】循环程序利用变址寄存器可以设

3、计一个循环程序:R0 LDX 5H将(R5)装入变址器XR1DEX命(X)减1R2JIZ4H (X)=0,则转移至R4R3JMP1H 无条件转移至 R1sR4HLT停机R53(10)(R5)=3(10)(数据)第 1 次执行结果:R0 LDX 5H (X)=(R5)=3(10)R1DEX(X)=3-1=2(10)R2JIZ4H因为(X)M0,所以不转至R4R3JMP1H 无条件转回 R1第 2 次执行结果:R1 DEX (X)=2-1=1(10)R2 JIZ 4H 因为(X)MO,所以不转至R4R3 JMP 1H 无条件转回 R1第3 次执行结果:R1 DEX (X)=1-1=0R2 JIZ

4、因为(X)=0,所以转至R4R4 HLT 停机由此例可见,DEX至JIZ这两条指令之间要执行由“LDX R5”中所规定的次数(R5的内容 就是次数)。此例R5=3(10),所以执行3次。如R5=10(10),则将进行10次,R5=100(10), 则将进行100次。【例 3.3】乘法计算的程序利用循环程序可作乘法计算,例如要求12(10)X8(10),就是要求将12(10)连加8次。这就 可以利用循环程序,让它进行8次循环。程序如下:R0NOPR1LDXAHR2CLAR3DEXR4ADD9H7 次返回R5JIZ7HR6JMP3HR7OUT转出循环R8 HLTR912(10)RA8(10)流水线

5、技术是一种同时进行若干操作的并行处理方式。它把取操作和执行操作重叠进行,在执行一条指令的同时,又取另一条或若干条指令。程序中的指令仍是顺序执行,但可以预 先取若干指令,并在当前指令尚未执行完时,提前启动另一些操作。取指令1指令.译码1地址1 r生成占1Jn取操作数Hq典行指今1J(a)顺序非流水线取/执行周期1一取捋令!指令,r澤码1地址jr生成i!*n取操作数11 1rsn执行指令执行上一r 11条指令11“11!(b)流水线取/执行周期虚拟存储器,它允许建立一个存储容量比实际物理上主存储器的容量更大。存放在虚拟存 储器中的数据或程序只有其中一部分放在物理存储器,若所执行的指令地址不在这部分

6、存储 器里时,管理计算机的软件(计算机操作系统)能察觉出来,知道要找的地址不在RAM中而 在一个外部磁盘里。计算机管理软件就会自动启动磁盘,把包括所需地址的存储区域调入物 理存储器,覆盖原先存在的部分后继续运行。8086 CPU从功能上可分为两部分,即总线接口部件(bus interface unit,缩写为BIU)和执 行部件 EU(execution unit)。执行部件由下列部分组成:(1) 4 个通用寄存器,即 AX, BX, CX, DX;(2) 4个专用寄存器,即基数指针寄存器BP,堆栈指针寄存器SP,源变址寄存器SI,目 的变址寄存器DI;(3) 标志寄存器(FR);(4) 算术

7、逻辑部件(ALU)。标志寄存器FR共有16位,其中7位未用,所用的各位含义如下:D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0OFDFIFTFSFZFAFPFCF6个状态标志位的功能分别叙述如下:CF(Carry Flag) 进位标志位。当执行一个加法(或 减法)运算,使最高位产生进位(或借位)时,CF为1;否则为0。PF(Parity Flag)奇偶标 志位。该标志位反映运算结果中1的个数是偶数还是奇数。当指令执行结果中含有偶数个1 时,PF=1;否则PF=0。AF(Auxiliary carry Flag)辅助进位标志位。当执行一个加法(或减 法)运算,使结果

8、的低4位向高4位有进位(或借位)时,AF=1;否则AF=0。ZF(Zero Flag) 零标志位。若当前的运算结果为零,ZF=1;否则ZF=0。SF(Sign Flag)符号标志位。它 和运算结果的最高位相同OF(Overflow Flag) 溢出标志位。当补码运算有溢出时,OF=1; 否则 OF=0。3个控制标志位用来控制CPU的操作,由指令进行置位和复位。DF(Direction Flag)方 向标志位。它用以指定字符串处理时的方向,当该位置“1”时,字符串以递减顺序处理,即 地址以从高到低顺序递减。反之,则以递增顺序处理。IF(Interrupt enable Flag)中断允许 标志位

9、。它用来控制8086是否允许接收外部中断请求。若IF=1, 8086能响应外部中断,反 之则不响应外部中断。TF(Trap Flag)跟踪标志位。它是为调试程序而设定的陷阱控制位。 当该位置“1 ”时,8086 CPU处于单步状态,此时CPU每执行完一条指令就自动产生一次内 部中断。当该位复位后,CPU恢复正常工作。微处理器(microprocessor)是微型计算机的运算及控制部件,也称中央处理单元(CPU)。它 本身不构成独立的工作系统,因而它也不能独立地执行程序。通常,微处理器由算术逻辑部 件(ALU)、控制部件、寄存器组和片内总线等几部分组成20位的物理地址在CPU内部就应有20位的地

10、址寄存器,而机内的寄存器是16位的(16 位机),16位寄存器只能寻址64KB。8086 / 8088系统中把1M存储空间分成若干个逻辑段, 每个逻辑段容量W64KB,因此1M的存储空间可分成16个逻辑段(015)。物理地址=段基址X16+偏移地址,例如,代码段寄存器CS=2000H,指令指针寄存器存放 的是偏移地址IP=2200H,存储器的物理地址为20000H+2200H=22200H。物理地址的形成如图4.5所示,它是通过CPU的总线接口部件BIU的地址加法器来实现 的。例如,下面的程序段将AL中的数乘以10:SAL AL,1,; 将AL中数左移1位,得2XMOV BL,AL ; 2X

11、保存在 BL 中MOV CL,2;移位次数置入CL中SAL AL, CL ; 2X 左移 2 位,得 8XADD AL, BL ; 2X 加上 8X,所以 AL 中为 10X【例6.1】用数据运算指令,对两个16位数做加法运算。这两个数从地址10050H开始连续存放,低位在小地址一端,结果放在这两个数之后。MOVAX,1000HMOVDS,AX;DS = 1000HMOVSI,50H;被加数指针SI=50HMOVDI,52H;加数指针DI=52HMOVBX,54H;和的指针BX=54HCLC清CFXORAX,AX;清 AXMOVAXSI;取一个字到 AXADCAX,DI; AXAX+ DI +

12、CFMOVBX, AX;存一个字到BXHLT; 暂停【例 6.2】将内存(10050)单元的内容拆成两段,每段4位,并将它们分别存入内存(10051) 和(10052)单元。即(10050)单元中的低4位放入(10051)的低4位, (10050)单元中的高4位放 入(10052)的低4位,而(10051)和(10052)的高4位均为零。MOVAX, 1000HMOVDS, AX;DS=1000HMOVSI, 50H;需拆字节的指针SI=50HMOVAL, SIANDAL, 0FHMOVSI+1, ALMOVAL, SIMOVCL, 4SHRAL,CL;MOVSI+2,AL;【例6.3】求AX

13、累加器和BX寄存器中两个无符号数之差的绝对值,结果放在内存(2800) 单元中。CLC ; 清除 CFSUB AX, BX ; AXAX-BX(?)JC AA ; CF=1转AA去执行(即AXVBX时转移)MOV DI, 2800H;结果指针 DI=2800HMOV DI, AX ; 结果送到2800H和2801H单元HLT ; 暂停AA: SUB BX,AX ; BXBX-AXMOV DI,2800HMOV DI,BXHLTCLC; 清除 CFMOV DX,AXSUB AX,BX ; AXAX-BXJC AA ; CF=1转AA去执行(即AXVBX时转移)MOV DI, 2800H;结果指针 DI=2800HMOV DI, AX ; 结果送到2800H和2801H单元HLT ; 暂停AA: SUB BX,DX ; BXBX-AXMOV DI,2800HMOV DI,BXHLT应提前保存 AX (MOV DX,AX), 或先比较。【例6.4】我们要编一个程序,从外设71H号中取一个数M,判断其值是否在10和20之 间,即10WMV20。如果M三20H,则送0FFH给外设73H;如果MV10,则送00H给外 设73H;如果10WMV20,则送88H给外设73H。START:IN AL,71HCLC;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号