汇编语言天津大学作业答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

汇编语言复习题

一、简答题

1、存储器地址为什么要分段?物理地址是如何形成的?

2、IBM PC机的寻址方式(与数据有关的寻址方式)有几种?各举一例说明。

3、80x86微机的存储器中存放信息如下图所示。试读出30022H与30024H字节单元的内容与30021H和30022H字单元的内容。

4、现有(DS)=2000H,(BX)=0100H,(SI)=0002H, (20100)= 12H, (20101)=34H, (20102)= 56H, (20103)=78H, (21200)=2AH, (21201)= 4CH, (21202)=B7H, (21203) = 65H,试说明下列各条指令执行完后AX的内容。

1)MOV AX,1200H

2)MOV AX,BX

3)MOV AX,[1200H]

4)MOV AX,[BX]

5)MOV AX,1100[BX]

5、完成下列各式补码数的运算,并根据结果设置标志位SF,CF,ZF,OF,指

出运算结果是否有效

1)01001001b+10011101b

2)01000001b-10101011b

6、有符号定义语句如下:

BUFF DB 1,2,3,’123’

EBUFF DB 0

L EQU EBUFF-BUFF

问L的值为多少?为什么?

答案:

1、IBM PC系列机的字长为16位,能够访问的最大存储空间64KB,而在IBM PC 内存为1MB的情况下,访问这1MB的存储空间需要20位。为了解决字长为16位的机器访问1MB的存储空间,将1MB空间每16B分为一段,共64K段,以16位段地址:16位偏移地址的形式组成,物理地址通过如下方式计算:

物理地址=段地址×10h + 偏移地址

2、IBM PC机的寻址方式有7种:

1)立即寻址:MOV AX, 1234H;

2)寄存器寻址:MOV AX, BX;

3)直接寻址:MOV AX, [1234H];

4)寄存器间接寻址:MOV AX, [BX];

5)寄存器相对寻址:MOV AX, 20H[BX];

6)基址变址寻址:MOV AX, [BX][SI];

7)相对基址变址寻址:MOV AX, 100H[BX][SI];

3、解:(30022H)= 12H

(30024H) = 56H

(30021H) = 12CDH

(30022H) = 3412H

4、解:

(1)MOV AX,1200H

解:(AX)=1200H

(2)MOV AX,BX

解:(AX)= 0100H

(3)MOV AX,[1200H]

解:物理地址=(DS)×10H+1200H

(AX) = 4C2AH

(4)MOV AX,[BX]

解:物理地址=(DS)×10H+0100H=20100H

(AX)=3412H

(5)MOV AX,1100[BX]

解:物理地址=(DS)×10H+0100H+1100H=21200H

(AX)=4C2AH

5、

(1)01001001b+10011101b

解:

01001001

+10011101

————————

11100110 由此可得:SF=1 CF=0 ZF=0 OF = 0 计算结果有效(2)01000001b-10101011b

解:

01000001

-10101011

————————

=> 01000001

+ 01010101

————————

10010110 由此可得:SF=1 CF=1 ZF=0 OF=1

减法计算中,被减数、减数符号相反,结果符号与减数相同,OF=1计算结果无效

6、有符号定义语句如下:

BUFF DB 1,2,3,’123’

EBUFF DB 0

L EQU EBUFF-BUFF

问L的值为多少?为什么?

解:根据数据段的定义,BUFF长度定义为6个字节,分别存放1,2,3,‘1’,‘2’,‘3’,而后紧接着为EBUFF的地址,故L值为6

二、程序题

1、MOV BL,64H

MOV CL,03H

XOR AX,AX

AGAIN:ADD AL,BL

ADC AH,0

DEC CL

JNZ AGAIN

问:(1)该程序段完成的功能是:

(2)AX=________。

2、已知数据段中定义

DAT1 DB 12H,34H,56H,78H

MOV CX,0

MOV AX,WORD PTR DAT1

MOV CL,DAT1+3

当程序段执行完后AX=________,CX=________。

3、DA1 DB 83H,72H,61H,94H,5AH

MOV CX,WORD PTR DA1

AND CX,0FH

MOV AL,DA1+3

SHL AL,CL

上述指令序列执行后,AL=_______,CL=_______。

4、某程序欲用单个字符显示的2号功能调用去显示STRING中的字符串‘COMPUTER’(不显示字符‘$’!).试在空白处填上适当的一条指令。STRING DB‘COMPUTER’,‘$’

MOV BX,0FFSET STRING

LOP:MOV DL,[BX]

MOV AH,02H

INT 21H

____________________

____________________

JNE LOP

相关文档
最新文档