微机原理第二节3.ppt

  1. 1、本文档共48页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
3)段寄存器 CS:代码段(Code Segment);存放程序段的段地址。 DS:数据段(Data Segment);存放数据段的段地址。 ES:附加段(Extra Segment);存放附加段的段地址. SS:堆栈段(Stack Segment);存放堆栈段的段地址。 31 4)控制寄存器 IP:指令指针(Instruction Pointer)寄存器;能自动加1,生成代码段中下一条将要取的指令的偏移地址。 PSW(FLAGS):程序状态字(Program State Word)寄存器;用各个状态位反映算术逻辑运算的一些状态标志和控制标志。 32 5、PSW标志位的定义 C—进位标志,结果在最高位产生进位或借位时置1; P—奇偶标志,运算结果低八位中1的个数为偶数时置1; A—半进位标志(低4位向高4位的进位); Z—运算结果为零时置1; S—符号标志,该标志位与结果的最高位相同; O—溢出标志,运算结果超出有符号数表示范围时置1; D—方向标志,用于串操作,置1时使串操作按减1执行; T—跟踪标志,置1后处理器进入单步执行方式,便于调试 I—中断允许标志,置1后允许CPU接受外部可屏蔽中断; 前6种标志为状态标志,后3种标志为控制标志 O D I T S Z A P C 33 [例] 给出以下运算结果及运算后各状态标志位的状态: 11110100 + 1 CF= OF= AF= PF= SF= ZF= 1 0 1 0 1 0 34 [例] 给出以下运算结果及运算后各状态标志位的状态: 0010 0011 0100 0101+0011 0010 0001 1001 0010 0011 0100 0101 + 0011 0010 0001 1001 0101 0101 0101 1110 0 CF= OF= AF= PF= SF= ZF= 0 0 0 0 0 0 34 [练习] 给出以下运算结果及运算后各状态标志位的状态: 0101 0100 0011 1001+0100 0101 1100 1010 0101 0100 0011 1001 + 0100 0101 1100 1010 1001 1010 0000 0011 0 CF= OF= AF= PF= SF= ZF= 0 1 1 1 1 0 34 * 2.2.4 8088/8086 CPU存储器组织 * 1. 物理地址与逻辑地址 每个内存单元在整个内存空间中都具有唯一的地址 每个内存单元的地址码都由两部分组成: 段(基)地址 16位 段内地址 16位 相对地址/偏移地址 物理地址 8088为16位结构,所以段地址和偏移地址均为16位 * 段基地址: 决定存储单元在内存中的位置 相对地址(偏移地址) 决定该存储单元相对段内第一个单元的距离 逻辑段的起始地址称为段首 每个逻辑段内的第一个单元 段首的偏移地址=0 * 0 0 0 0 段基地址(16位) 段首地址(段首的物理地址) × × × ? ? ? × × × 19 0 4 段首的偏移地址: 0000H 段基地址(16位) × × × ? ? ? × × × 31 0 15 × × × ? ? ? × × × * 例: 段基地址 =6000H 段首地址 偏移地址=0009H 物理地址 数据段 60009H 00H 12H 60000H 9 物理地址: 内存单元在整个内存空间中的惟一地址 * 2.段寄存器的使用 作用 用于存放相应逻辑段的段基地址 8086/8088内存中逻辑段的类型 代码段 数据段 附加段 堆栈段 存放指令代码 存放操作的数据 存放操作的数据 存放暂时不用但需保存的数据。 * CS 代码段寄存器,存放代码段的段基地址。 DS 数据段寄存器 ,存放数据段的段基地址。 ES 附加段寄存器,存放数据段的段基地址。 SS 堆栈段寄存器, 存放堆栈段的段基地址 段寄存器的值表明相应逻辑段在内存中的位置 * 实地址模式下的存储器地址变换 内存物理地址由段基地址和偏移地址组成 物理地址=段基地址×16+偏移地址 0 0 0 0 段首地址 × × × ? ? ? × × × 19 0 4 × × × ? ? ? × × × 偏移地址 + 物理地址 * 例: 已知 CS=1055H

文档评论(0)

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

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

1亿VIP精品文档

相关文档