安徽工程大学计算机与信息学院
B: DW ‘12’ MYDATA ENDS MYCODE SEGMENT
ASSUME DS:MYDATA,CS:MYCODE MOV DS,MYDATA MOV AH,A MOV AL,B MOV CX,A
MOV IP,B
4. 改正下面程序片段中的错误或指出错误原因。 DATA SEGMENT
A DB 12、24、34
B DW ‘12’,‘ABCD’
DATA ENDS CODE SEGMENT
ASSUME DS:DATA,CS:CODE
MOV DS,DATA
MOV DX,OFFSET A
MOV AL,[DX+2] MOV BL,CX 5. 指出下面程序片段中的错误。 A1:DB ? A2 DW 10 K1 EQU 1024
?? MOV DS,1200H
MOV AX,80 MOV K1,AX MOV AL,A2 MOV BX,A1
安徽工程大学计算机与信息学院
MOV A1,K1
6. 假设某程序段中的数据定义如下:
DA1 DW ?,2DUP(1) DA2 DB 32H,25H DA3 DB ? CUNT EQU $-DA1 问:(1) 画出内存分配图
(2) 变量DA1、DA2、DA3各占用几个字节?CUNT的值是多少?它表示什么意义?
7. 假设某程序段中的数据定义如下:
A1 DW 3 DUP( 2 DUP(1,2)) A2 DB ‘5678H’ A3 DD ? L EQU $-A1
问:A1、A2、A3在数据段中各占用几个字节?L的值是多少?它表示什么意义?
8. 对下面两个数据段,请分析偏移地址为10H和11H的两个字节中的数据是一样的吗?为什么?
DTSEG SEGMENT ORG
10H
| | | |
DTSEG SEGMENT ORG
10H
DATA1 DB 72H
DB 04H
DATA1 DW 7204H DTSEG ENDS
DTSEG ENDS |
9. 若STR是字符串的首地址,指出下列程序的功能,并将语句加上注解。
LEA
BX,STR ;_________
MOV CX,20 ;_________
LP: CMP [BX],‘*’
JNZ NEXT ;_________ MOV [BX],‘$’ ;_________
BX ;_________ LP ;_________
NEXT: INC
LOOP HLT
程序的功能:
安徽工程大学计算机与信息学院
10. 填入适当指令或指令的一部分,完成指定功能。
设有100个字节数据(无符号数),存放在数据段中EA=2000H的存储区内。以下程序片断应能从该数据区中找出最大的一个数并存入同一数据段EA=21OOH的单元中,请完成该程序。 MAX: MOV BX, M0V AL,[BX] M0V CX,
LOOP1: INC BX
CMP AL,[BX] MOV AL,[BX]
LOOP2: DEC CX
JNZ M0V ,AL
11. 指出下列程序的功能,并将有分号(;)的语句加上简要注解
BUF DB 100 DUP(?)
MOV BX,OFFSET BUF ; MOV CL,64H
LP: MOV BYTE PTR[BX],0 ;
INC BX ; DEC CL ; JNZ LP ;
程序的功能: 12. 分析填空
MOV BL,09H ;执行后 BL=_________ MOV AL,05H ;执行后 AL=_________ ADD AL,BL ;执行后 AL=_________ DAA ;执行后 AL=_________
BL=_________
13. 分析填空
MOV AX,00H ;执行后 AX=_________
安徽工程大学计算机与信息学院
PUSH AX POP BX
;执行后 AX=_________
;执行后 BX=_________
MOV AX,3F5FH ;执行后 AL=_________
MOV CX,4 ROR AL,CL AND AL,0FH
;执行后 AL=_________
;执行后 AL=_________
14. 分析填空
假设(BL)=0E3H,变量VALUE中存放的内容79H,确定下列各条指令单独执行后的结果。 (1)XOR BL,VALUE BL= (2)OR BL,VALUE BL= (3)XOR BL,0FFH BL= (4)AND BL, 0 BL= (5)SHL BL,1 BL= 15. 阅读程序回答问题
DATA SEGMENT
BLOCK DB 51,30,43,107,89,90,200,197,70,64 COUNT EQU $-BLOCK RESULT DB 0
DATA ENDS CODE SEGMENT
ASSUME CS:CODE,DS:DATA START:MOV AX, * MOV DS,AX MOV SI, **
MOV CX,COUNT CON:MOV AL,[SI]
TEST AL,01H JZ NEXT INC RESULT NEXT:INC SI