- 44
- 0
- 约9.11千字
- 约 63页
- 2016-08-04 发布于重庆
- 举报
微机原理第05次课第03章-2
查表指令例 数据段中存放有一 张ASCII码转换表, 设首地址为2000H, 现欲查出表中第11 个代码的ASCII码 (设DS=4000H) 查表指令例 可用如下指令实现: MOV BX,2000H ;(BX)←表首地址 MOV AL,0BH ;(AL)←序号 XALT ; 查表转换 执行后得到:(AL)=42H 8086指令系统 传送类指令 数据操作类指令 串操作指令 控制类指令 数据操作类指令 此类指令主要包括以下三种: 一、算术运算类指令 二、逻辑运算指令 三、移位指令 四、小结 算术运算类指令 8086/8088指令系统中,具有完备的加、减、乘、除算术运算指令,可处理不带符号或带符号的8/16位二进制整数,以及不带符号的装配型/拆开型十进制整数。 一、加法指令 二、减法指令 三、乘法指令 四、除法指令 五、BCD码运算指令 加 法 指 令 加法指令有以下三条: 一、不带进位位的加法指令ADD 二、带进位位的加法指令ADC 三、增量指令INC 指令说明… 不带进位位的加法指令 带进位位的加法指令 ADC和ADD指令示例 ADD指令例 例题: MOV AL,78H ADD AL,99H 指令执行后6个状态标志位的状态 增 量 指 令 加 法 指 令说 明 减 法 指 令 减法指令主要有以下五条: 一、不带借位的减法指令SUB 二、带借位的减法指令SBB 三、减量指令DEC 四、取补指令NEG 五、比较指令CMP 不带借位的减法指令 带借位的减法指令 减 量 指 令 取 补 指 令 取 补 指 令 说 明 比 较 指 令 比 较 指 令 CMP指令 两个无符号数的比较: CMP AX,BX 若 AX BX CF=0 若 AX BX CF=1 两个带符号数的比较 CMP AX,BX 两个数的大小由OF和SF共同决定 OF和SF状态相同 AX BX OF和SF状态不同 AX BX 减 法 指 令 说 明 乘 法 指 令 乘法指令采用隐含寻址,隐含的是存放被乘数的累加器AL或AX及存放结果的AX,DX;将DX寄存器看成是AX寄存器的扩展,当得到16位乘积时,结果放在AX中;当得到32位乘积时,结果放在DX和AX两个寄存器中,DX为乘积的高16位,AX为乘积的低16位。 若运算结果的高位全为0或1,表示其为无效数据,OF=CF=0 一、无符号的乘法指令MUL 二、有符号的乘法指令IMUL 无符号的乘法指令 无符号数乘法指令例 MUL BYTE PTR[BX] 有符号的乘法指令 IMUL指令例 设:AL=FEH,CL=11H,求AL与CL的乘积。 若为无符号数,则 MUL CL 结果:AX=10DEH 若将两操作数看作有符号数,则: IMUL CL 指令执行后:AX=FFDEH=-34。 IMUL指令将OPRD视为带符号数,运算时若操作数为负数,要先将操作数求补码,运算后再将结果求补。 除法指令 执行除法指令时,规定除数必须为被除数的一半字长。 除法指令相关指令主要有以下四条: 一、 无符号的除法指令DIV 二、 有符号的除法指令IDIV 三、 字节转换指令CBW 四、 字转换指令CWD 除法指令 无符号除法指令 DIV OPRD 有符号除法指令 IDIV OPRD 无符号的除法指令 有符号的除法指令 乘法和除法小结 字节转换指令 字转换指令 指令小结二 逻辑运算类指令 逻辑运算指令主要由以下几部分组成: 一、逻辑与指令AND 二、逻辑或指令OR 三、逻辑异或指令XOR 四、逻辑测试指令TEST 五、逻辑非指令NOT 逻辑与指令 逻辑或指令 逻辑异或指令 逻辑测试指令 逻辑非指令 逻辑运算指令说明 例题讲解 设( CH)= 0111 1001 , TESTVAL =1110 0011. 下列操作分别执行时,各指令执行后(CH)=? OR(或)运算 AND与运算 XOR异或运算 TEST命令的使用 TEST 和 AND指令 移位指令 移位指令主要由以下两大类指令组成: 一、非循环移位指令 二、循环移位指令 非循环移位指令 此类指令主要实现对寄存器或内存单元中的8位或16位操作
原创力文档

文档评论(0)