1.题目要求:
利用移位,传送和相加指令实现AX的内容扩大十倍。
2.解题步骤:
(1)将AX的内容扩大2倍,即左移一位。
(2)将AX的内容扩大8倍,即左移三位。
(3)将2倍和8倍相加,得到10倍
STACK SEGMENT STACK'STACK'
DW 100H DUP(?)
TOP LABEL WORD
STACK ENDS
DATA SEGMENT
VAR1 DW 1 ;VAR1为AX将要存的内容
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACK
START:
MOV AX,DATA
MOV DS,AX
MOV AX,VAR1 ;将VAR1的值给AX
MOV BX,AX ;将AX的内容给BX
MOV CL,3
SHL AX,1 ;AX左移1位,即扩大两倍
SHL BX,CL ;BX左移3位,即扩大八倍
ADD AX,BX ;扩大两倍与扩大八倍相加,存入AX
MOV AH,4CH
INT 21H
CODE ENDS
END START