已知下列程序: D1 DB 10 DUP(?) D2 DB 30H,31H,32H,33H,34H,35H,36H,37H,38H,39H ┇ MOV CX,LENGTH D1 MOV SI,SIZE D1—TPYE D1 LP:MOV AL,D2[SI] MOV D1[SI],AL SUB SI,TYPE D1 DEC CX JNZ LP HLT 问: (1)该程序执行后,D1单元开始的10个字节内容是什么? (2)该程序完成的功能是什么?
第1题:
执行下面的程序后,AX寄存器中的数据是( )。 BUT DW 10DUP(2) XOR AX, AX MOV CX, LENGTH MOV SI,SIZE BUF—TYPEBUF NEXT: ADD AX,BUF [SI] SUB SI,TYPE BUF LOOP
A.20
B.30
C.32
D.40
第2题:
下面的程序段 DAT DB 1,2,3,4 MOV AL,0 MOV CX,4 MOV SI,3 LP: ADD AL,DAT [SI] DEC SI LOOPE LP HLT 执行结束后,AL和CX寄存器中的内容分别是
A.4和3
B.7和2
C.9和1
D.10和0
第3题:
DSEG SEGMENT
BUF DB 1,5,4,0,7,9,2,6
L EQU O0111001B 用作逻辑尺
RESULT DB 10 DUP(?)
DSEG ENDS
SSEG SEGMENT STACK
DB 256 DUP(0)
SSEG ENDS
CSEG SEGMENT
ASSUME DS:DSEG; SS:SSECG, CS:CSEG
START PROC FAR
PUSH DS
XOR AX, AX
PUSH AX
MOV AX, DSEG
MOV DS, AX
MOV SI, 0
MOV CX, 8
MOV DL, L
GOON: SHR DL, 1
JC FILL
MOV AL, BUF[SI]
JMP NEXT
FILL: MOV AL, OFFH
NEXT: MOV RESULT[SI], AL
INC SI
LOOP GOON
RET
START ENDP
CSEG ENDS
END START
在保持以上程序功能不变的前提下,INCSI指令可以用【 】指令替换。
第4题:
下列程序执行后,(SI)为( ) MOV CX,5 MOV SI,4 Al:INC SI INC SI LOOP AI
A.4
B.5
C.14
D.15
第5题:
下列程序执行后,(AL)、(BX)、(CX)分别为( ); TABLE DW 15 DUP(?) MOV AL,TYPE TABLE MOV BX,LENGTH TABLE MOV CX,SIZE TABLE
A.1,1,1
B.2,1,2
C.1,15,15
D.2,15,30
第6题:
已知DS= ES =1000H执行下列程序: MOV SI,101H MOV DI,100H MOV CX,4 LP1:MOV AL,[ SI] MOV[ DI] ,AL INC SI INC DI LOOP LP1 INT 3 DS:101H DB 69H,23H,56H,3AH 程序运行后结果为:(10100H)= ()H(10101H)= ()H(10102H)= ()H(10103H)= ()H
第7题:
源程序如下: MOV CX,9 MOV AL,01H MOV SI,1000H NEXT:MOV[SI],AL INC SI SHL AL,1 LOOP NEXT 执行本程序后AL等于多少?SI等于多少?CX等于多少?
第8题:
阅读下面的程序,回答问题 DATA SEGMENT BUF DB '1234' N=$-BUF BCD DB N DUP(?) DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,DATA MOV DS,AX LEA SI,BUF MOV CX,N LEA DI,BCD+N-1 LOOP1:MOV AL,[SI] SUB AL,30H MOV [DI],AL INC SI DEC DI DEC CX JNE LOOP1 MOV AH,4CH INT 21H CODE ENDS END START 说明程序功能,程序执行后,从BCD开始的N个字节单元中的内容是什么?
第9题:
程序段如下: BLK1 DB 46,84,34,-5,20,122,73 : MOV CX,7 LEA S1,BLK1 NEXT:MOV AL,[SI] INC SI TEST AL,81H LOOPZ NEXT MOV BL,[SI] : 请回答程序段运行后: (AL)=? (BL)=?
第10题:
第11题:
第12题:
第13题:
执行下面的程序后,AX寄存器中的数据是( )。 BUT DW 10 DUP (2) XOR AX,AX MOV CX,LENGTH MOV SI,SIZE BUF-TYPE BUF NEXT: ADD AX,BUF [SI] SUB SI,TYPE BUT LOOP
A.20
B.30
C.32
D.40
第14题:
完成41H送[2100H]、42H送[2101H]的正确程序是( )。
A.MOV AL,41H MOV [2100H], AL INC AL MOV [2100H],AL
B.MOV SI, 2100H MOV [SI], ‘A’ INC SI MOV [SI], ‘B’
C.MOV AX,4241H MOV AX,AX
D.MOV AX, ‘AB’ MOV [2100H],AX
第15题:
下面的程序段DAT DB 1, 2, 3, 4 MOV AL, 0 MOV CX, 4 MOV SI, 3LP: ADD AL, DAT [SI] DEC SI LOOPE LP HTL 执行结束后,AL和CX寄存器中的内容分别是
A.4和3
B.7和2
C.9和1
D.10和0
第16题:
下列程序执行后,(SI)为( )。 MOV CX, 10 MOV SI, 5 A1: INC SI INC SI LOOP A1
A.14
B.15
C.24
D.25
第17题:
有程序如下: BUF DB. 12H,23H,34H,45H,56H,67H,78H,89H,91H MOV SI,O MOV AL,[ BUF +SI] LP: INC SI CMP SI,9 JAE EXIT CMP AL,[BUF +SI] JLE NEXT()MOV AL,[BUF +SI] A22:JMP LP EXIT:INT 3 程序执行后AL=?该程序的功能是什么?
第18题:
阅读下面的程序,回答问题 DATA SEGMENT BUF DB '1234' N=$-BUF BCD DB N DUP(?) DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,DATA MOV DS,AX LEA SI,BUF MOV CX,N LEA DI,BCD+N-1 LOOP1:MOV AL,[SI] SUB AL,30H MOV [DI],AL INC SI DEC DI DEC CX JNE LOOP1 MOV AH,4CH INT 21H CODE ENDS END START 取消数据段的BCD存储区,将处理后的数据放回原处,应如何修改程序?
第19题:
阅读下面的程序,回答问题 DATA SEGMENT BUF DB '1234' N=$-BUF BCD DB N DUP(?) DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,DATA MOV DS,AX LEA SI,BUF MOV CX,N LEA DI,BCD+N-1 LOOP1:MOV AL,[SI] SUB AL,30H MOV [DI],AL INC SI DEC DI DEC CX JNE LOOP1 MOV AH,4CH INT 21H CODE ENDS END START 找出一条指令代替指令“SUB AL,30H”,使程序功能不变。
第20题:
D1 DB 20H DUP(?) D2 DW D1 请写出用一条指令实现取D1的偏移地址=>SI中的三种方法。
第21题:
源程序如下: MOV CX,9 MOV AL,01H MOV SI,1000H NEXT:MOV[SI],AL INC SI SHL AL,1 LOOP NEXT 本程序的功能是什么?
第22题:
第23题: