阅读下面的程序,回答问题 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如果将代码段中的指令LEA DI,BCD+N-1改成LEA DI,BCD;DEC DI改成INC DI,其它指令不变,程序执行后,从BCD开始的N个字节单元中的内容是什么?
阅读下面的程序,回答问题 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 如果将代码段中的指令LEA DI,BCD+N-1改成LEA DI,BCD;DEC DI改成INC DI,其它指令不变,程序执行后,从BCD开始的N个字节单元中的内容是什么?
相关考题:
下面的汇编语言源程序经汇编后,发现TEST [BX], 01H指令有语法错误,试问该指令的正确形式应该是 。 DSEG SEGMENT DAT DB 5,13,4,-2,6,23,44,-1,29,-3 CNT DW $-DAT DSEG ENDS SSEG SEGMENT STACK DB 256 DUP(0) SSEG ENDS CSEG SEGMENT ASSUME DS:DSEG,SS:SSEG,CS:CSEG START PROC FAR PUSH DS XOR AX,AX PUSH AX MOV AX,DSEG MOV DS,AX XOR AX,AX MOV BX,OFFSET DAT MOV CX,CNT LP: TEST [BX],01H JZ NEXT INC AH ADD AL,[BX] NEXT: INC BX LOOP LP SET START ENDP CSEG ENDS END START
根据下面的汇编语言源程序,其运行结果是在屏幕上显示 。 DSEG SEGMENT DAT DB 0FFH N EQU 3 BUF DB 3 DUP(‘?’) DB ‘$’ DSEG ENDS SSEG SEGMENT STACK DB 256 DUP(0) SSEG ENDS CSEG SEGMENT ASSUME DS:DSEG,SS:SSEG,CS:CSEG START: MOV AX,DSEG MOV DS,AX MOV BX,OFFSET BUF MOV SI,N MOV AL,DAT MOV AH,0 MOV CX,10 NEXT: XOR DX,DX DIV CX ADD DL,30H ;形成ASCII码 DEC SI MOV [BX+SI],DL OR SI,SI JNE NEXT LEA DX,BUF MOV AH,9 INT 21H MOV AH,4CH INT 21H CSEG ENDS END START
下面程序的功能是利用逻辑尺对BUF变量中的数据进行变换,执行该程序后,以RESULT为首地址的前两个字节单元中的数据依次为【 】。DSEG SEGMENTBUF DB 1,5,4,0,7,9,2,6L EQU 00111001B ;用做逻辑尺RESULT DB 10 DUP(?)DSEG ENDSSSEG SEGMENT STACKDB 256 DUP(0)SSEG ENDSCSEG SEGMENTASSUME DS:DSEG,SS:SSEG,CS:CSEGSTART PROC FARPUSH DSXOR AX,AXPUSH AXMOV AX,DSEGMOV DS,AXMOV SI,0MOV CX,8MOV DL,LGOON: SHR DL,1JC FILLMOV AL,BUF[SI]JMP NEXTFILL: MOV AL,OFFHNEXT: MOV RESULT[SI],ALINC SILOOP GOONRETSTART ENDPCSEG ENDSEND START
完成下面的程序段,使程序显示中的字符串。DATA SEGMENTBUE DB ‘HOW DO YOU DO?’,ODH,OAH,’$‘┆DATA ENDSCODE SEGMENT┆MOV AX,DATAMOV DS,AX┆MOV DX【 】MOV AH, 9INT 21H┆CODE ENDS
阅读下述程序,指出宏指令ABC的功能是______。1 ABC MACRO X1,X2,X32 LOCAL CONT3 PUSH AX4 MOV AX, X15 SUB AX, X26 CMP AX, 07 JGE CONT8 NEG AX9 CONT: MOV X3, AX10 POP AX11 ENDM12 DATA SEGMENT13 X DW 3214 Y DW 9815 Z DW ?16 DATA ENDS17 CODE SEGMENT18 ASSUME CS:CODE,DS:DTAT19 BEGIN: MOV AX, DATA20 MOV DS,AX21 ABC X,Y,Z22 MOV AH, 4CH23 INT 21H24 CODE ENDS25 END BEGIN
执行下面的程序后,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 LOOPA.20B.30C.32D.40
下面的程序用来从键盘重复接收一字符送BUFF开始的单元,直到接收到行结束标志ODH。在程序中填空,保证其正确运行。1 DATA SEGMENT2 BUFF DW 128 DUP(0)3 DATA ENDS4 CODE SGEMENT5 ASSUME CS:CODE,DS:DATA6 BEGIN: MOV AX, DATA7 MOV DS, AX8 LEA SI, BUFF9 GCH: MOV AH, 01H10 INT 21H11 MOV [SI], AL12 INC SI13 __________14 JNE GCH15 MOV AH, 4CH16 INT 21H17 CODE ENDS18 END BEGIN
执行下列程序后,(CX)=( )。 DATA SEGMENT A DW 1, 2, 3, 4, 5 B DW 5 DATA SEGMENT CODE SEGMENT ASSUME CS: CODE, DS: DATA START: MOV AX, DATA MOV DS, AX LEA BX, A ADD BX, B MOV CX, [BX] MOV AH, 4CH INT 21H CODE ENDS END STARTA.400B.0C.10D.100
DSEG SEGMENTBUF DB 1,5,4,0,7,9,2,6L EQU O0111001B 用作逻辑尺RESULT DB 10 DUP(?)DSEG ENDSSSEG SEGMENT STACKDB 256 DUP(0)SSEG ENDSCSEG SEGMENTASSUME DS:DSEG; SS:SSECG, CS:CSEGSTART PROC FARPUSH DSXOR AX, AXPUSH AXMOV AX, DSEGMOV DS, AXMOV SI, 0MOV CX, 8MOV DL, LGOON: SHR DL, 1JC FILLMOV AL, BUF[SI]JMP NEXTFILL: MOV AL, OFFHNEXT: MOV RESULT[SI], ALINC SILOOP GOONRETSTART ENDPCSEG ENDSEND START在保持以上程序功能不变的前提下,INCSI指令可以用【 】指令替换。
判断下列指令是否正确。若不正确,指出错误原因。 (1)MOV SI, DL (2)MOV ES, 1000H (3)LEA AX, 3006H (4)MOV [BP][DI], 0 (5)MOV [SI], [DI] (6)MOV [DI],[BX] (7)MOV [DX+SI],AL (8)MUL AL , 58H (9)MOV DS,SEG DAT (10)MOV WORD PTR [BX],-1
下面是将内存一字节数据高四位和低四位互换并放回原位置的程序,其中有7个语句中有错误,请找出错误的地方并改正。 第1行 DATA SEGMENT 第2行 DD1 DB 23H 第3行 DATA ENDM 第4行 CODE SEGMENT 第5行 ASSUME CS:CODE,DS:DATA 第6行 START MOV AX,DATA 第7行 MOV DS,AX 第8行 LEA SI,OFFSET DD1;取变量DD1的偏移地址 第9行 MOV AL,[SI] 第10行 MOV DL,4;设置移位次数 第11行 RCR AL,CL;循环右移4次 第12行 MOV [SI],AL 第13行 MOV AH,4CH 第14行 INT 21H 第15行 CODE ENDP;代码段结束 第16行 END BEGIN
阅读下列程序段,注释指令中属性分离符的功能。 DATA SEGMENT A DW 20,100,-60H B DB ‘ABCDEFG ’ DATA ENDS ┆ ①MOV AX, SEG B ②MOV BX, OFFSET B ③MOV CX, TYPE A ④MOV DX , TYPE B
阅读下面的程序,回答问题 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存储区,将处理后的数据放回原处,应如何修改程序?
阅读下面的程序,回答问题 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”,使程序功能不变。
阅读下面的程序,回答问题 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个字节单元中的内容是什么?
判断下列指令是否正确。若不正确,指出错误原因。 (1)MOV AX, [EBX] (2)MOV SI, DL (3)MOV EBP, [ESP][EAX*3] (4)LEA AX, 3006H (5)MOV [BP][DI], 0 (6)MOV [SI], [DI] (7)MOV ES, 1000H (8)MOV AX, X+2 (9)MOV AX, CX+2 (10)MOV [EAX][EAX*2], AL
阅读下列程序段,注释指令中计算符LENGTA的取值. DATA SEGMENT A DW 10 DUP(?), 1234H, 20 DUP(?) B DB ‘ABCDEF’,6 DUP(?) C DW 10, 20 DPU(?) D DW 5 DUP(3 DUP(2),5) DATA ENDS ┆ ① MOV AX, LENGTH A ② MOV BX ,LENGTH B ③ MOV CX ,LENGTH C ④ MOV DX ,LENGTH D
已经定义数据段如下: DATASEGMENT NUM=56 X DB NUM Y DB 27 Z DW 148 DATAENDS 指出下列指令中的错误: (1)MOV Y,X (2)MOV BL,04B8H (3)MOV AL,Z (4)MOV [BX],3 (5)MOV [BX],[DI] (6)MOV DS,DATA (7)MOV NUM,AX (8)MOV ES,DS (9)MOV AX,FLAGS (10)MOV CS,AX
问答题判断下列指令是否正确。若不正确,指出错误原因。 (1)MOV AX, [EBX] (2)MOV SI, DL (3)MOV EBP, [ESP][EAX*3] (4)LEA AX, 3006H (5)MOV [BP][DI], 0 (6)MOV [SI], [DI] (7)MOV ES, 1000H (8)MOV AX, X+2 (9)MOV AX, CX+2 (10)MOV [EAX][EAX*2], AL
问答题已经定义数据段如下: DATASEGMENT NUM=56 X DB NUM Y DB 27 Z DW 148 DATAENDS 指出下列指令中的错误: (1)MOV Y,X (2)MOV BL,04B8H (3)MOV AL,Z (4)MOV [BX],3 (5)MOV [BX],[DI] (6)MOV DS,DATA (7)MOV NUM,AX (8)MOV ES,DS (9)MOV AX,FLAGS (10)MOV CS,AX
问答题阅读下列程序段,注释指令中计算符LENGTA的取值. DATA SEGMENT A DW 10 DUP(?), 1234H, 20 DUP(?) B DB ‘ABCDEF’,6 DUP(?) C DW 10, 20 DPU(?) D DW 5 DUP(3 DUP(2),5) DATA ENDS ┆ ① MOV AX, LENGTH A ② MOV BX ,LENGTH B ③ MOV CX ,LENGTH C ④ MOV DX ,LENGTH D
填空题初一5班共64人,已知每个学生的数学成绩存放在SCODE开始的单元中,求其平均成绩,并放在PJCD单元。试填写下面程序段。 DATA SEGMENT SCODE DB 68, 95, 76,…. PJCD DB DATA ENDS CODE SEGMENT ASSUME CS: CODE, DS:DATA START:MOV AX, DATA MOV DS, AX MOV AX,O MOV CX, 30 MOV SI,() ADD1:ADD AL() JNC() INC() NEXT:INC() LOOP() MOV CL,6 SHR(),CL MOV PJCD,() MOV AH,4CH INT 21H CODE ENDS END START
问答题判断下列指令是否正确。若不正确,指出错误原因。 (1)MOV SI, DL (2)MOV ES, 1000H (3)LEA AX, 3006H (4)MOV [BP][DI], 0 (5)MOV [SI], [DI] (6)MOV [DI],[BX] (7)MOV [DX+SI],AL (8)MUL AL , 58H (9)MOV DS,SEG DAT (10)MOV WORD PTR [BX],-1