微机原理与接口 5.ppt

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

? CPU内部寄存器(除CS,IP外)与存储器(所有寻址方式)之间的数据传送 MOV BX, BUFFER MOV [DI], CX MOV AL, [2000] MOV SI, BLOCK[BP] MOV AX, [SI] MOV DS, DAT[SI+BX] (2) PUSH进栈操作指令 (3) POP出栈操作指令 (4) XCHG交换指令 (5) XLAT查表转换指令 (Table Lookup-Translation) 输入输出指令共有两条。输入指令IN用于从外设端口读入数据,输出指令OUT则向端口发送数据。无论是读入的数据或是准备发送的数据都必须放在寄存器AL(字节)或AX(字)中。 输入输出指令可以分为两大类:一类是端口直接寻址的输入输出指令;另一类是端口通过DX寄存器间接寻址的输入输出指令。在直接寻址的指令中只能寻址256个端口(0~255),而间接寻址的指令中可寻址64 K个端口(0~65535)。 8086/8088 CPU提供了三条把地址指针写入寄存器或寄存器 对的指令,它们可以用来写入近地址指针和远地址指针。 (2) 地址指针装入DS指令LDS (Load pointer into DS) 例: lds si, [100h] (3) 地址指针装入ES指令LES (Load pointer into ES) 又例: les di, [100h] 8086/8088 CPU中有一标志寄存器FLAGS,其中包括6个状态 标志位和3个控制位。每一状态标志位表示CPU运行的状态。许多 指令执行结果会影响标志寄存器的某些状态标志位。同时,有些 指令的执行也受标志寄存器中控制位的控制。标志传送指令共有4 条。这些指令都是单字节指令,指令的操作数为隐含形式。 (1) 取标志指令LAHF (Load AH from Flags) (2) 置标志指令SAHF (Store AH into Flags) (3) 标志压入堆栈指令PUSHF (PUSH Flags onto stack) (4) 标志弹出堆栈指令POPF (POP Flags off stack) 2. 减法指令 (2)SBB带借位的减法指令(Subtract with Borrow) (3)DEC减量指令(Decrement) (4)NEG取负指令(Negate) (5)CMP比较指令(Compare) (6)非压缩型BCD码减法调整指令AAS (ASCII Adjust for Subtraction)。 (7)压缩型BCD码减法调整指令DAS (Decimal Adjust for Subtraction) 3. 乘法指令(Multiply) (2)带符号数乘法指令IMUL (Integer Multiplication)。 (2)带符号数乘法指令IMUL (Integer Multiplication)。 (3)非压缩型BCD码的乘法调整指令AAM (ASCII Adjust for Multiply)。 4. 除法指令(Division) (2)带符号数除法指令IDIV (Integer DIVision) (3)CBW把字节转换成字的指令(Convert Byte to Word) (4)CWD把字转换成双字的指令 (Convert Word to Double Word) (5)非压缩型BCD码的除法调整指令AAD (ASCII Adjust for Division)。 三、逻辑运算指令 (5)测试指令TEST (TEST or non-destructive logical AND) (1) SAL算术左移指令(Shift Arithmetic Left) (2) SHL算术左移指令(SHift logical Left) (3)逻辑右移指令SHR (SHift logical Right) (4)算术右移指令SAR (Shift Arithmetic Right) (1)循环左移指令ROL (ROtate Left) (2)循环右移指令ROR (ROtate Right) (3)带进位循环左移指令RCL (Rotate Left through Carry) (4)带进位循环右移指

文档评论(0)

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

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

1亿VIP精品文档

相关文档