- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
IBMPC汇编语言(③80x86指令系统和寻址方式)
例:MOV BX,offset table ; (BX)=0040H MOV AL,3 XLAT 指令执行后 (AL)=33H 2. 移位指令 移位指令包括算术移位指令、逻辑移位指令和循环移位指令,分别进行左移和右移操作。这些指令均有统一的语句格式: [标号:] 操作符 OPR,1 或 [标号:] 操作符 OPR,CL 其功能为将目的操作数的所有位按操作符规定的方式移动1位或按寄存器CL规定的次数(0~255)移动,结果送入目的地址。目的操作数是8位(或16位)的寄存器数据或存储器数据。 算术移位指令有:算术左移SAL(Shift Algebraic Left)和算术右移SAR(Shift Algebraic Right)。它们的指令格式如下: SAL/SAR OPR, CL/Imm 受影响的标志位:CF、OF、PF、SF和ZF(AF无定义)。 功能: 算术左移SAL把目的操作数的低位向高位移,空出的低位补0; 算术右移SAR把目的操作数的高位向低位移,空出的高位用最高位(符号位)填补。 CF OPR 0 CF OPR 算术左移 算术左移 算术移位指令常用于带符号数*2或/2 逻辑左移SHL(Shift Logical Left)和逻辑右移SHR(Shift Logical Right)。 它们的指令格式如下: SHL/SHR OPR, CL/Imm 受影响的标志位:CF、OF、PF、SF和ZF(AF无定义)。 逻辑左移/右移指令只有它们的移位方向不同,移位后空出的位都补0。 CF OPR 0 CF OPR 0 逻辑左移 逻辑右移 逻辑移位指令常用于无符号数*2或/2 循环移位指令有: 循环左移ROL(Rotate Left)和循环右移ROR(Rotate Right)。 指令的格式:ROL/ROR OPR, CL/Imm 受影响的标志位:CF和OF 循环左移/右移指令只是移位方向不同,它们移出的位不仅要进入CF,而且还要填补空出的位。 CF OPR CF OPR 循环左移 循环右移 带进位的循环移位指令有:带进位的循环左移RCL(Rotate Left Through Carry)和带进位的循环右移RCR(Rotate Right)。 指令的格式:RCL/RCR OPR, CL/Imm 受影响的标志位:CF和OF 带进位的循环左移/右移指令只有移位的方向不同,它们都用原CF的值填补空出的位,移出的位再进入CF。 CF OPR CF OPR 带进位循环左移 带进位循环右移 2. 移位指令 例:移位指令可实现乘法功能 MOV SI,AX SHL SI,1 ;SI←2×AX ADD SI,AX ;SI←3×AX MOV DX,BX MOV CL,03H SHL DX,CL ;DX←8×BX SUB DX,BX ;DX←7×BX ADD DX,SI ;DX←7×BX+3×AX 注:(1)逻辑左移一位相当于无符号数乘以2, (2)逻辑右移一位相当于无符号数除以2。 3.3.4 串处理指令 字符串操作指令的实质是对一片连续存储单元进行处理,这片存储单元是由隐含指针DS:SI或ES:DI来指定的。字符串操作指令可对内存单元按字节或字进行处理,并能根据操作对象的字节数使变址寄存器SI(和DI)增减1或2。具体规定如下: (1)当DF=0时,变址寄存器SI(和DI)增加1或2; (2) 当DF=1时,变址寄存器SI(和DI)减少1或2。 在后面各指令中,有关变址寄存器都按上述规定进行增减,不再一一说明。 1. 与 REP 配合工作的 MOVS / STOS / LODS的指令 重复前缀指令REP 重复前缀指令是重复其后的字符串操作指令,重复的次数由CX来决定。其一般格式为: REP MOVS / STOS / LODS 重复前缀指令的执行步骤如下: (1)判断:CX=0; (2)如果CX=0,则结束重复操作,执行程序中的下一条指令;(3)否则,CX=CX-1(不影响有关标志位),并执行其后的字符串操作指令,在该指令执行完后,再转到步骤(1)。 字符串传送指令(Move String Instruction) 功能:将以
您可能关注的文档
- 2009届高三二轮复习《有机物的性质、推断、鉴别及合成》.ppt
- 2009年高考语文二轮专题复习三(上)字形讲稿.ppt
- 2009高考物理专题复习两物体分离的临界问题19.ppt
- 2010.11,公选Chapter1,Unit1.翻译的定义.ppt
- 20101126邵颖化学药品注册的分类管理与技术要求.ppt
- 20101226化学药品原料药药理毒理技术要求与问题程鲁榕.ppt
- 20102011管理咨询讲稿第二篇咨询工具与方法.ppt
- 2010届高考化学复习强化双基系列03《物质检验的设计》..ppt
- 2010届高中地理高考二轮专题复习专题二第三讲水循环和水运动规律新人教版.ppt
- 2010届高考化学复习强化双基系列07《物质的组成和分类》..ppt
文档评论(0)