More Related Content
Similar to Ch2 80x86计算机组织结构
Similar to Ch2 80x86计算机组织结构 (20)
Ch2 80x86计算机组织结构
- 24. 2.2 80x86 CPU 的寄存器 寄存器分为 3 类: 通用寄存器 、控制寄存器、段寄存器。 图 2-3 80x86 寄存器组
- 26. 表 2-.2 通用寄存器的用途 通用寄存器 主 要 用 途 显示或 隐含使用 EAX , AX 累加器 在算术运算中作为累加器 在乘法操作中,存放乘数和乘积 在除法操作中,存放被除数、商和余数 在串操作指令中存放操作数 在 DOS 、 BIOS 的功能调用中存放功能号 (AH) 在一般操作中存放操作数或结果 显示 隐含 隐含 隐含 显示 显示 EBX , BX 基址寄存器 在间接寻址或基址变址寻址时用于基址寄存器 在一般操作中存放操作数或结果 显示 显示 ECX , CX 计数器 在循环指令中,作循环次数计数器 在移位操作时用于移位次数计数器 在串操作时可作为循环次数计数器 隐含 显示 显示 EDX , DX 数据寄存器 在 16 位乘法中用于存放乘积高位 在 32 位 ÷16 位除法中用于存放被除数高位及余数 I/O 指令间接寻址时用于存放端口地址寄存器 隐含 隐含 隐含 ESP , SP 堆栈指针寄存器 在堆栈操作中用作堆栈指针 隐含 EBP , BP 基址指针寄存器 在相对堆栈段的基址加变址寻址时用于基址寄存器 在利用堆栈来向子程序传递参数时用于基址寄存器 显示 ESI , SI 源变址寄存器 间接寻址时用于地址寄存器和变址寄存器 串操作时用于源变址寄存器 显示 隐含 EDI , DI 目的变址寄存器 间接寻址时用于地址寄存器和变址寄存器 串操作时用于目的变址寄存器 显示 隐含
- 43. 图 2-5 80286 ~ Pentium 的标志寄存器
- 44. 表 2-3 8086/8088 标志寄存器状态功能表 名 称 标志位状态 功 能 进位标志 CF CF=1 ; CY CF=0 ; NC CF=1 运算结果最高位有进位或有借位(用于多字节加减运算)否则 CF=0 。 ( DEBUG 中 CF=1 : CY , CF=0 : NC ) 奇偶标志 PF PF=1 ; PE PF=1 ; PO 运算结果的低 8 位中所含 “ l ” 的个数为偶数: PF=1 ,否则 PF=0 。 ( DEBUG 中 PF=1 : PE , PF=0 : PO ) 辅助进位标志 AF AF=1 ; AC , AF=0 ; NA AF=1 :运算结果低四位向高四位有进位或有借位(用于 10 进制运算指令)否则 AF=0 。 ( DEBUG 中 AF=1 : AC , AF=0 : NA ) 结果为 0 标志 ZF ZF=1 ; ZR ZF=0 ; NZ ZF=1 运算结果为 0 , ZF=0 运算结果不为 0 ; ( DEBUG 中 ZF=1 : ZR , ZF=0 : NZ ) 符号标志 SF SF=1 ; NG SF=0 ; PL 运算结果为正(符号位为 0 ) SF=1 ; 运算结果为负(符号位为 1 ) SF=0 。 ( DEBUG 中 SF=1 : NG , SF=0 : PL ) 溢出标志 OF=1 ; OV OF=0 ; NV 带符号数的运算结果产生溢出时, OF=1 ;否则 OF=0 。 ( DEBUG 中 OF= 1 : OV , OF= 0 : NV ) 方向标志 DF=1 ; DN DF=0 ; UP 串操作指令用的标志, DF=1 执行字符串操作指令时使地址指针自动增量(字符串处理顺序由低向高进行); DF=0 使地址指令自动减量。可通过指令 STD 置 DF =1 , CLD 清 DF =0 ( DEBUG 中 DF=1 : DN , DF=0 : OP ) 中断标志 IF=1 ; EI IF=0 ; DI 可屏蔽中断的标志; IF=1 允许中断(允许 CPU 响应可屏蔽外部中断); IF=0 禁止中断,关中断; 可通过指令 STI 置 IF=1 , CLI 清 IF=0 ( DEBUG 中 IF=1 ; EI , IF=0 ; DI ) 单步(跟踪)标志 TF TF=1 TF=0 CPU 按跟单步踪方式执行指令
- 58. 寄存器与存储器的比较: 寄 存 器 存 储 器 在 CPU 内部 在 CPU 外部 访问速度快 访问速度慢 容量小,成本高 容量大,成本低 用名字表示 用地址表示 没有地址 地址可用各种方式形成
- 91. 练习:存储器的逻辑地址与物理地址 10011111 00100110 01001000 逻辑地址 段地址 : 偏移地址 1000 : 0000 H 1000 : 0001H 1000 : 0002H 1000 : 0003H 1000 : 0004H 1000 : 0005H 物理地址 10000 H 10001H 10002H 10003H 10004H 10005H 10000011 01011100 10100010 字节内容( 10000H )= 9FH ;( 10001H )= 26H 字内容 ( 10000H )= 269FH ;( 10001H )= 4826H 访问两次内存