如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
算术运算(Arithmetic)指令(1)算术运算(Arithmetic)指令(2)算术运算(Arithmetic)指令(3)算术运算(Arithmetic)指令(4)算术运算(Arithmetic)指令(5)算术运算(Arithmetic)指令(6)算术运算(Arithmetic)指令(6)比较两数大小LEABX,DATAMOVAL,[BX]INCBXCMPAL,[BX]JNCDONEMOVAL,BXDONE:MOVMAX,AL算术运算(Arithmetic)指令(7)算术运算(Arithmetic)指令(八)逻辑运算与移位(Logical&shifting)逻辑运算与移位(Logical&shifting)逻辑移位(Logicalshifting)SHL/SAL(SHiftlogicalLeft/ShiftArithmeticLeft)1位/CL位相当于无符号数*2SHL/SALdest,1;SHLAL,1;SHLCX,1SHL/SALdest,CLSHLWORDPTR[BX],CLCFdest(MSB…LSB)0移一次当MSB≠CF则OF=1逻辑移位(Logicalshifting)SHR(Shiftlogicalright)/2SHRdest,1(CL)0dest(MSB…LSB)CF当只移动1位,新的最高位和次高位不同时,OF=1超过1位时,OF不定。算术移位(ArithmeticShifting)SAR(ShiftArithmeticright)带符号/2SARdest,1;SARdest,CLMSBdest(MSB…LSB)CFMOVAL,10001000B;SARAL,1;10001000B=(88H=-78H)AL=11000100B(C4H=-60=-3CH)SARAL,11111111B;(0FFH=-1)循环移位指令(RotateShifting)ROL(Rotateleft)ROLdest1/CLAL=10001000BROLAL,1AL=ROR(Rotateright)RORdest1/CLRORWORDPTR[BX],CL8位或16位操作数移位/循环循环移位指令(RotateShifting)RCL(RotateThroughCarryFlagleft)RCLdest1/CLRCR(RotateThroughCarryFlagright)RCRdest1/CLAL=84H48H(高低四位交换)AL=10001000B00010001B(高低顺序交换)例2-3将ASCII码转换成BCD码串操作(StringManipulation)movsbmovsw串操作功能与默认操作数cmpsbcmpsw转移控制(ControlTransfer)转移控制(ControlTransfer)转移控制(ControlTransfer)转移控制(ControlTransfer)CALL段内\段间:直接/间接调用(过程/子程序Subroutine)RET(RETF)过程返回(分远近,产生不同RET码(C3/CBH)过程调用指令(Callaprocedure)过程返回指令(ReturnFromCall)子程序(Subroutine)与函数(Function)中断指令InterruptMPU控制(ProcessorControlMPU控制(ProcessorControl)MPU控制(ProcessorControl)IA-16指令汇总微机计算机原理微机计算机原理微机计算机原理①用户按段址和偏址组成48位虚地址存储空间编程。②程序运行前CPU将所有的段值生成段表保存在主存中,每个段值对应段表中一个段表项,主要描述本段基值、段长度和本段访问权限。③程序运行时由当前段对应的段表项与偏移地址生成32位的线性地址。④由32位线性地址的高位生成的页表保存在主存中,其虚页号大小与主存实际页号大小相同。⑤程序运行到某页号程序位置时在页表中查询,若此页不在主存则根据一定算法将辅存中虚页调入主存置换成实页号,若此页已在主存则按实页号和页内偏址进行处理。