(1)存储器7000H:500H~7000H:503H相邻存放两个16位数字,将其相加,结果送地址7000H:504H开始的地址单元。
(2)存储器7000H:500H~7000H:503H相邻存放两个32位数字,将其相加,结果送地址7000H:506H开始的地址单元。
(3)内存DS:[1000H]开始连续存放着两个8位无符号数12H和34H,求12H*34H,结果存于DS:[1002H]开始的内存单元。
(4)用A命令写程序段,要求用移位指令完成将AX乘以8,加上BX之后,再除以4。其中AX,BX均为带符号数。
(2)用一条逻辑指令实现以下功能
1. 清除BX寄存器;
2. 使DX寄存器的高3位为1,其余位不变;
3.使BL的低4位为0,其余位不变;
4. 将AX中的第0,2,4,6位取反,其他位不变。
AX初始值:0110 0110 0110 0110=6666
按位取反:0110 0110 0011 0011=6633
解:构造和AX相“异或”的操作数X,X的位数和AX一致,其中,X的第0,2,4,6位取1,其他位为0,即0000 0000 0101 0101。1+4+16+64=85
(5)判断BX的正负性。若为正,则将BX的赋给AX,否则AX置为-1。
CMP BX,0
JG NEXT
MOV AX,FFFF
JMP EXIT
NEXT:MOV AX,BX
EXIT:
在这里插入图片描述
结论:BX为负