这三个题请大侠赐教,小弟刚汇编入门,不太会啊
1,现有程序如下:
DATA SEGMENT
BUF DB ‘ER39*5867JgeewFGHYUO9385’
C = $-BUF
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:MOV AX,DATA
MOV DS,AX
MOV CX,C
LEA SI,BUF
L: MOV AL,[SI]
CMP AL,61H
JB NEXT
CMP AL,7AH
JA NEXT
SUB AL,20H
MOV [SI],AL
NEXT: INC SI
LOOP L
MOV AH,4CH
INT 21H
CODE ENDS
END START
请回答:(1)该程序完成什么功能?
(2)该程序执行完后,BUF缓冲区的内容是什么?
2,阅读以下程序后回答问题。
DD2 DB0,l,2,3,4,5,6,7,8,9
…
LEA SI,DD2
LEA DI,DD2+1
MOV CX,5
LOP: MOV AL,[SI]
XCHG AL,[DI]
MOV [SI],AL
ADD SI,2
ADD DI,2
DEC CX
JNZ LOP
回答:(1) 该程序段完成什么功能?
(2) 程序运行后,DD2开始的l0个字节数应是什么值?
3现有程序如下:
DATA SEGMENT
BUF DB 23,125,96
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA
MOV DS,AX
LEA SI,BUF
MOV AL,[SI]
MOV BL,[SI+1]
MOV CL, [SI+2]
CMP AL, BL
JAE N1
XCHG AL, BL
N1: CMP AL, CL
JAE N2
XCHG AL, CL
N2: CMP BL, CL
JAE N3
XCHG BL, CL
N3: MOV [SI], AL
MOV [SI+1], BL
MOV [SI+2], CL
MOV AH, 4CH
INT 21H
CODE ENDS
END START
请回答:(1)该程序完成什么功能?
(2)程序运行后BUF中的内容依次是什么?
答案:(1) 该程序段完成什么功能?
将BUF串中所有大写字母转换为小写字母,其它字符不变
(2)该程序执行完后,BUF缓冲区的内容是什么?
er39*5867jgeewfghyuo9385
(1) 该程序段完成什么功能?
数据交换
(2) 程序运行后,DD2开始的l0个字节数应是什么值?
1,1,3,3,5,5,7,7,9,9
(1)该程序完成什么功能?
数据降序排序
(2)程序运行后BUF中的内容依次是什么?
124,96,23
上一个:汇编 求解答.
下一个:学二进制编程是不是要学习汇编语言?