微机原理汇编指令集合研讨.docVIP

  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文档。上传文档
查看更多
微机原理汇编指令集合研讨

微机原理及接口技术常用编指令 寄存器(用来存放存储单元的段地址或偏移地址、参与运算的数据、状态标志等)相关指令 8086 CPU 中有14个16位的寄存器,这14个寄存器按照功能分为四类:通用寄存器、段寄存器组、指令指针、标志位寄存器FR。 1.通用寄存器(8个) ㈠数据寄存器: ①AX(accumulator):寄存器(累加器)它的由来来源于EAX寄存器(32位):EAX累加寄存器EAX分为高16位和低16位。其中低16位又可单独访问,命名为AX,16位寄存器AX又可单独访问,可分为高、低分别为AH、AL字节个8位。AX常用于运算;在乘法和除法中指定用来存放操作数,另外所有的I/O指令都使用这一个寄存器与外接设备传送数据。 ②BX(base):基址寄存器,常用于地址索引(count):计数寄存器,常用于计数;常用于保存计算值,如在移位指令,循环(loop)和串处理指令中用作隐含的计数器. DX(data):数据寄存器,常用于数据传递。SP(Stack Pointer):堆栈指针,与SS配合使用,可指向目前的堆栈位置BP(Base Pointer):基址指针寄存器,可用作SS的一个相对基址位置SI(Source Index):源变址寄存器可用来存放相对于DS段之源变址指针DI(Destination Index):目的变址寄存器,可用来存放相对于 ES 段之目的变址指针。指令指针IP(Instruction Pointer)(Segment Register)(4个) 为了运用所有的内存空间,8086设定了四个段寄存器,专门用来保存段地址: CS(Code Segment):代码段寄存器;DS(Data Segment):数据段寄存器;SS(Stack Segment):堆栈段寄存器;ES(Extra Segment):附加段寄存器。?4.标志位寄存器FR(Flag Regise) 8086CPU设置了一个16位的标志寄存器FR,用来显示微机的运行结果或控制机制操作,规定了其中的9位,标志的设置,FR的九个标志按作用可分为两大类:一类叫状态标志,用来表示运算结果的特征,他们是:CF、PF、AF、ZF、SF、OF。另一类叫做控制标志,用来控制CPU的操作,它们是:IP、DF、TF。 CF(carrier flag)进位标志位:运算中高四位中发生进位或错位时,CF=1;否则CF=0;STC指令可置CF=1,CLR指令对CF求反;循环指令也会影响该标志位。 DF(direction flag)方向标志位:控制串指令对字符串处理的方向。DF=0时,变址地址指针SI、DI作增量操作,即由低地址向高地址进行串操作,字节操作增量为1,字操作增量为2;DF=1时,作减量操作,即由高地址向低地址进行串操作。STD指令可置DF=1,CLD指令置DF=0。 OF(overflow flag)溢出标志位:当运算结果超出机器的的表示范围时OF=1;否则为0;存在以下几种情况可称之为溢出【即使OF=1】两个正数相加得到一个负数;l两个负数相加得到一个正数;两个相同符号的数相乘得到一个负数;两个异号的数相乘得到一个正数。 PF(parity flag)?奇偶校验位:当运算结果的低8位中1的个数为偶数时,PF=1;否则PF=0; AF(auxiliary flag)辅助进位标志:在运算结果的低4位向高4位有进位(加法)或有错位(减法)时,AF=1否则AF=0.该标志一般在BCD码运算中作为是否进行十进制调整的判断。 ZF(zero flag)零标志位:结果为0,ZF=1,否则ZF=0. SF(sign flag) 符号标志位:在进行有符号运算数的算术运算,当运算结果为负时SF=1,否则为0。 IF(interrupt flag)中断允许标志位:控制可屏蔽中断的标志。当IF=1时,允许CPU响应屏蔽中断请求;当IF=0时,禁止响应。 TF(trap flag) 陷阱标志位:这是为程序调试而提供的CPU单步工作方式。TF=1时,CPU每执行完 一个条指令就产生一个内部中断,以便对每一个指令的执行结果进行跟踪调查。 二、数据传送指令 1、数据传送指令 ⑴通用数据传送指令 MOV(Move) 数据传送。 Mov指令形式【MOV OPRD1目的操作数 OPRD2源操作数】它允许在CPU的寄存器之间、存储器和寄存器之间传送字节和字数据,也可以将立即数传送到寄存器或存储器中。功能即:将源操作数送入目的操作数中,源操作数保持不变。 以下注意点:立即数、代码段寄存器CS(代码段寄存器)只能做源操作数;IP(指令指针)寄存器不能作源操作数或目的操作数;MOV指令不能在两个存储单元之间直接传递数据,也不能在两个段寄存器之间直接传送数据;两个操作数的类型属性要一致。

文档评论(0)

骨干 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档