计算机三级偏软包过之三级汇编.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

1/131

1/1318086寄存器组8086有14个寄存器,它们都是16位的,这些寄存器按功能可为6类:(1)通用寄存器(4个)(2)地址指针寄存器(2个)(3)变址寄存器(2个)(4)段寄存器(4个)(5)指令指针寄存器(1个)(6)标志寄存器(1个)

1/1318086寄存器组

1/1311)、通用寄存器(1)数据寄存器(AX、BX、CX、DX)数据寄存器用来保存操作数或运算结果等信息。AX寄存器称为累加器。使用频度最高,用于所有的输入/输出操作。某些字串操作以及算术运算,如乘法、除法,某些翻译指令也使用AX寄存器。BX寄存器称为基址寄存器。常用于存放存储器地址。用于扩展寻址,起变址作用。CX寄存器称为计数器。一般作为循环或串操作等指令中的隐含计数器。DX寄存器称为数据寄存器。常用于字乘法和除法中存放双字数据的高16位,或用来存放外设端口地址。

1/131(3)地址指针寄存器A、SP寄存器堆栈指针寄存器。在访问堆栈时,段地址在SS中,SP则表示偏移地址。B、BP寄存器基址指针寄存器。在通过堆栈传递数据和地址时,段地址在SS,BP存放要传递的数据和地址的偏移地址。BP也可作为通用寄存器用。当SI、DI、BP不用作变址寄存器和指针寄存器时,也可以作16位数据寄存器使用,用来保存操作数和运算结果。

1/1312)、段寄存器8086设立了4个16位的段寄存器用来保存4个当前段的起始基址(省略了地址的低4位,即每段从内存段界开始,低4位认为是0),分别称为代码段寄存器CS、数据段寄存器DS、堆栈段寄存器SS和附加数据段寄存器ES。(1)CS寄存器代码段寄存器。它含有当前执行程序所在段的首地址,这个段寄存器内容左移4位(即乘16)再加上指令指针寄存器(IP)的内容,就是下一条要执行的指令地址。(2)DS寄存器数据段寄存器。它含有当前数据段的首地址,通常数据段用来存放数据和变量,数据段寄存器内容加上指令中的偏移值,即为对数据段指定单元操作的地址。

1/131(3)SS寄存器堆栈段寄存器。它保存当前堆栈的首地址。堆栈是存储器中设置的一种数据结构,用于存放数据和地址,有先进后出的特点,在调用子程序时,保留返回主程序的地址,也用来保留进入子程序将要改变其值的各寄存器的内容等。(4)ES寄存器附加段寄存器。附加段是在进行字符串操作时,作为目的段地址使用,这个附加段是附加的一个数据段,如用DS作为数据段段地址,SI为源地址偏移,将一个字串从源传送到目的区去,这个目的区可设在附加段中,即ES装附加段地址,DI寄存目的区地址的偏移。如果要使用附加段,用户程序必须对ES初始化,即设置值,否则ES=DS,即数据段和附加数据段重合。

1/1314)、标志寄存器程序有时需根据上次指令执行的结果,判断以决定执行的方向,为此8086设有一个很重要的16位标志寄存器,它包含9个标志位,共占用2个字节。它们主要用于保存一条指令执行后,CPU所处状态信息及运算结果的特征,其中六位作为指令执行结果的条件标志,三位用作控制标志。这些标志位在标志寄存器中的位置如下:

1/131A.条件标志(1)符号标志SF第7位。对带符号的数操作时,若产生一个负的结果,则SF=1,否则为0,当算术、逻辑、移位或循环移位操作时,都将影响此位。(2)零标志ZF第6位。当运算结果为零时,ZF=1,结果非零,则ZF=0。(3)溢出标志OF第11位。当带符号数算术运算时,商位溢出,则OF=1,否则为0,它用来作错误指示标志。

1/131B.状态控制标志(1)方向标志DF第10位。可用指令预置。当DF=0时,执行串操作指令后,变址寄存器自动递增,当DF=1时,则动递减。即该标志可控制地址朝增加的方向或减少的方向改变。(2)中断允许标志IF第9位。当用指令置为1时,则允许8088响应中断请求,若为0时,则禁止响应中断请求。(3)跟踪标志TF第8位。当置为1时,则8088处于单步执行指令方式,每执行一条指令,自产动产生一个类型为1的中断。

1/131右图表明了存储器中部分存储单元存放信息情况。从图1.4可看到,地址为34560H的字节的存储单元中的内容是34H,而地址为34561H的字节存储单元中的内容是12H。

1/1312、物理地址的形成8086CPU的地址线是20位的,这样最大可寻址空间应为220=1MB,其物理地址范围从00000H~FFFFFH。而8086CPU寄存器都是16位的。那么,这1MB空间如何用16位寄存器表达呢?根据要求可把1M字节地址空间划成若干逻辑段。每个逻辑段必须满足两个条件:一是逻辑段的起始地址(简称段首

文档评论(0)

知识的力量 + 关注
实名认证
文档贡献者

每天进步一点点,生活向上没一天

1亿VIP精品文档

相关文档