网站大量收购闲置独家精品文档,联系QQ:2885784924

第02章微处理器结构及工作原理1精品.ppt

  1. 1、本文档共64页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第02章微处理器结构及工作原理1精品

8088的内部结构 1 2 3 4 内部暂存器 IP ES SS DS CS 输入/输出控制电路 总线 执行部分控制电路 ∑ ALU 标志寄存器 AH AL BH BL CH CL DH DL SP BP SI DI 通用 寄存器 地址加法器 指令队列 执行部件 (EU) 总线接口部件 (BIU) 16位 20位 8位 8位 8088的指令执行过程 图2-5 8086的存储格式 D7 D0 字节 D15 D0 字 D31 D0 双字 D7 D0 00000H 00001H 34H 00002H 12H 00003H 56H 00004H 78H 00005H 00006H 高地址 LSB MSB 逻辑段的分配 * 链接3 * 链接3 第2章:段超越的示例 没有段超越的指令实例: MOV AX,[2000H] ;AX←DS:[2000H] ;从默认的DS数据段取出数据 采用段超越前缀的指令实例: MOV AX,ES:[2000H];AX←ES:[2000H] ;从指定的ES附加段取出数据 总结 第2章:段寄存器的使用规定 访问存储器的方式 默认 可超越 偏移地址 取指令 CS 无 IP 堆栈操作 SS 无 SP 一般数据访问 DS CS ES SS 有效地址EA BP基址的寻址方式 SS CS ES DS 有效地址EA 串操作的源操作数 DS CS ES SS SI 串操作的目的操作数 ES 无 DI 第2章:4. 标志寄存器 标志(Flag)用于反映指令执行结果或控制指令执行形式 8086处理器的各种标志形成了一个16位的标志寄存器FLAGS(程序状态字PSW寄存器) 程序设计需要利用标志的状态 第2章:标志寄存器-分类 状态标志--用来记录程序运行结果的状态信息,许多指令的执行都将相应地设置它 CF ZF SF PF OF AF 控制标志--可由程序根据需要用指令设置,用于控制处理器执行指令的方式 DF IF TF OF 11 15 12 DF 10 IF 9 TF 8 SF 7 ZF 6 5 AF 4 3 PF 2 1 CF 0 标志寄存器FLAGS OF 11 15 12 DF 10 IF 9 TF 8 SF 7 ZF 6 5 AF 4 3 PF 2 1 CF 0 进位标志 奇偶标志 辅助进位标志 零标志 符号标志 跟踪标志 中断标志 方向标志 溢出标志 第2章:进位标志CF(Carry Flag) 当运算结果的最高有效位有进位(加法)或借位(减法)时,进位标志置1,即CF=1; 否则CF=0 3AH + 7CH=B6H,没有进位:CF = 0 AAH + 7CH=(1)26H,有进位:CF = 1 第2章:奇偶标志PF(Parity Flag) 当运算结果最低字节中“1”的个数为零或偶数时,PF=1;否则PF=0 3AH+7CH=B6H 结果中有5个“1”,是奇数:PF=0 PF标志仅反映最低8位中“1”的个数是 偶或奇,即使是进行16位字操作 第2章:辅助进位标志AF(Auxiliary Carry Flag) 3AH+7CH=B6H,D3有进位:AF=1 运算时D3位(低半字节)有进位或借位时,AF=1;否则AF=0 这个标志主要由处理器内部使用, 用于十进制算术运算调整指令中, 用户一般不必关心 第2章:零标志ZF(Zero Flag) 若运算结果为0,则ZF=1; 否则ZF=0 3AH+7CH=B6H,结果不是零:ZF=0 84H+7CH=(1)00H,结果是零:ZF=1 注意:ZF为1表示的结果是0 第2章:符号标志SF(Sign Flag) 运算结果最高位为1,则SF=1; 否则SF=0 3AH+7CH=B6H,最高位D7=1:SF=1 84H+7CH=(1)00H,最高位D7=0:SF=0 有符号数据用最高有效位表示数据的符号 所以,最高有效位就是符号标志的状态 第2章:溢出标志OF(Overflow Flag) 若算术运算的结果有溢出,则OF=1; 否则 OF=0 3AH + 7CH=B6H,产生溢出:OF=1 AAH + 7CH=(1)26H,没有溢出:OF=0 第2章:什么是溢出 处理器内部以补码表示有符号数 8位表达的整数范围是:+127 ~ -128 16位表达的范围是:+32767 ~ -32768 如果运算结果超出这个范围,就产生了溢出 有溢出,说明有符号数的运算结果不正确 3AH+7CH=B6H,就是58+124=182, 已经超出-128~+127范围,产

文档评论(0)

bodkd + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档