用汇编语言:变量ABC分别存放300,301,302(结果F放在310) (1)逻辑运算 F=AB+C' (2)算术运算

用汇编语言:变量ABC分别存放300,301,302(结果F放在310) (1)逻辑运算 F=AB+C' (2)算术运算 F=4*A+B+(C/2)
-小禾- 1年前 已收到1个回答 举报

jingjun333 幼苗

共回答了15个问题采纳率:86.7% 举报

DATAS SEGMENT
ORG 300 ;下面地址偏移从300开始,相当于A的存放地址为012CH=300
A DB ;地址012CH=300
B DB ;地址012DH=301
D DB ;地址012EH=302
X DB 7 DUP )
F DB ;内存单元地址为0136H=310
DATAS ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS
START:
MOV AX,DATAS
MOV DS,AX
MOV AL,A;把A的内容送到寄存器AL中
MOV BL,B
AND AL,BL;逻辑与A&B
MOV BL,D
OR AL,BL;逻辑或
ADD AL,30H;把结果转换成ascii码
MOV F,AL;把F=AB+C放在sbuff中
MOV DL,F;显示结果
MOV AH,02
INT 21H;显示结束
MOV DL,0DH;换行
MOV AH,02
INT 21H
MOV DL,0AH
MOV AH,02
INT 21H;换行结束
MOV AL,A
MOV CL,2
SHL AL,CL;向逻辑左移动2位,相当于4A
MOV DL,D
SHR DL,1
MOV BL,B
ADD AL,BL
ADD AL,DL
ADD AL,30H;把结果转换成ascii码
MOV F+1,AL;把结果放在311单元中
MOV DL,F+1;显示结果
MOV AH,02
INT 21H
MOV AH,4CH
INT 21H
CODES ENDS
END START
不知道这是不是你需要的答案?

1年前

8
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 16 q. 0.042 s. - webmaster@yulucn.com