汇编语言课后习题及答案 按章节 超全面Word文档下载推荐.docx

上传人:b****8 文档编号:22395703 上传时间:2023-02-03 格式:DOCX 页数:64 大小:61.67KB
下载 相关 举报
汇编语言课后习题及答案 按章节 超全面Word文档下载推荐.docx_第1页
第1页 / 共64页
汇编语言课后习题及答案 按章节 超全面Word文档下载推荐.docx_第2页
第2页 / 共64页
汇编语言课后习题及答案 按章节 超全面Word文档下载推荐.docx_第3页
第3页 / 共64页
汇编语言课后习题及答案 按章节 超全面Word文档下载推荐.docx_第4页
第4页 / 共64页
汇编语言课后习题及答案 按章节 超全面Word文档下载推荐.docx_第5页
第5页 / 共64页
点击查看更多>>
下载资源
资源描述

汇编语言课后习题及答案 按章节 超全面Word文档下载推荐.docx

《汇编语言课后习题及答案 按章节 超全面Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《汇编语言课后习题及答案 按章节 超全面Word文档下载推荐.docx(64页珍藏版)》请在冰豆网上搜索。

汇编语言课后习题及答案 按章节 超全面Word文档下载推荐.docx

7.十进制数的(731)=(0)BCD。

8.(0)BCD=(731)十进制数。

9.将一个0~9之间的数据转换为ASCII需加(30H)。

10.大写英文字母转换为小写英文字母需加(20H)。

11.英文字母“A”~“F”转换为十六进制数值A~F需要减(37H)。

四、简答题

1.什么是汇编语言?

为什么要学习汇编语言?

答:

汇编语言是机器语言的符号表示形式。

它不仅是计算机原理、操作系统等课程的必要先修课,而且对于训练学生掌握计算机工作原理、程序设计技术、熟练上机操作和程序调试技术都有重要作用。

3.把下列二进制数转换成十进制数。

①=②=

③=④=

5.把下列十六进制数转换成十进制数。

①=166.②9AC.BD=2476.

③4A=2890.④1AC.0A=428.

6.把下列英文单词转换成ASCII编码的字符串。

①Water=72②Great=74

③Good=476F6F64④After=72

7.回车键、空格键的ASCII代码及其功能是什么?

0DH、20H。

字符从头开始、空一个字符的位置。

第二章课外练习题

1.下列四个寄存器中,哪个寄存器在程序设计中是不可省略的(A)。

(A)CS(B)DS(C)ES(D)SS

2.指令movax,10[si]的源操作数字段的寻址方式是(C)。

(A)寄存器寻址(B)寄存器间址(C)变址寻址(D)基址寻址

3.8086∕8088CPU中可用作寄存器间址的寄存器是(B)。

(A)BX、SI、DI(B)BX、BP、SI、DI

(C)BX、IP、SI、DI(D)BX,DX,SI,DI

4.指令mov100[si][bp],ax目标操作数的隐含段为(B)。

(A)数据段(B)堆栈段(C)代码段(D)附加段

1.当SP,BP,SI,DI用于指针和变址寄存器使用时;

①SP中所含的偏移地址是堆栈段中的偏移地址。

(√)

②BP、SI、DI所含的偏移地址是数据段中的偏移地址。

(×

2.奇偶标志位PF,当运算结果的低8位中有偶数个1时,被置为0。

(×

3.零标志位ZF,当运算结果为0时,被置为0。

(×

4.符号标志位SF,在运算结果为负时被置为1。

(√)

1.在8086/8088CPU中,有许多寄存器,他们是通用寄存器:

(AX)(BX)(CX)(DX);

指针和变址寄存器:

(SP)(BP)(SI)(DI);

段寄存器:

(CS)(DS)(SS)(ES);

指令指针:

(IP)还有一个标志寄存器:

(PSW),他们都是(16)位的。

2.IBMPC机内存容量最大为(1M)B,要寻找这样大的空间,需要(20)根地址线。

3.每个逻辑段的最大长度为(64KB)。

4.在IBMPC机中,有4个专门存放段地址的寄存器,称为段寄存器,请写出以下段寄存器的符号:

代码段寄存器:

(CS)数据段寄存器:

(DS)

堆栈段寄存器:

(SS)附加段寄存器:

(ES)

1.IBMPC的存储器为什么采用分段结构?

是因为要寻找20位存储器地址的需要。

使用两个十六进制的寄存器做一个寻找20位寄存器工作的一种方法。

2.什么是逻辑地址?

什么是物理地址?

如何由逻辑地址计算物理地址?

逻辑地址是由两部分组成的,即段的基地址和偏移地址。

程序员在编写程序时使用的都是逻辑地址。

物理地址就是内存单元中的一个惟一的20位二进制数表示的地址,物理地址的范围是从00000H到FFFFFH。

CPU与存储器进行数据交换时所使用的地址就是物理地址。

物理地址=段地址×

16D+偏移地址。

3.如果在一个程序段开始执行之前,CS=0A7F0H,IP=2B40H,试问该程序段的第一个字的物理地址是多少?

16D+偏移地址=0A7F0H×

16D+2B40H=0AAA00H

4.一个有16个字的数据区,它的起始地址为70A0:

DDF6,那么该数据区的最后一个字单元地址是多少?

=DDF6H+20H-2H(16个字=32个字节=20H个字节)=DE14即70A0:

DE14

5.哪些寄存器可以用来指示存储器地址?

BX、BP、SI和DI。

6.有一个由20个字组成的存储区,其起始处段地址为4701H,偏移地址为2012H。

试写出该存储区首单元和末单元的物理地址。

该存储区末单元的偏移地址=2012H+28H-2(20个字=40个字节=28H个字节)=2038H。

即首单元和末单元的物理地址为49022H和49048H。

7.8086微处理器由哪几部分组成?

各部分的功能是什么?

8086/8088微处理器由两大部分组成:

总线接口单元BIU和执行单元EU。

①BIU:

负责与存储器接口,即CPU与存储器之间的信息传送。

即:

BIU从内存的指定部分取出指令,送至指令队列排队。

从内存的指定部分取出执行指令时所需的操作数,送至EU部分。

②EU:

负责指令的执行。

8.简述8086CPU的寄存器组织。

8086/8088CPU的寄存器是由①通用寄存器②控制寄存器③段寄存器组成。

9.试述8086CPU标志寄存器各位的含义与作用。

它含有9个有用的标志位(其余7位不用),用于记录指令操作后的结果状态信息或控制处理器操作的标志。

其含义与作用如下:

进位标志C(CarryFlag)——当加减运算操作后,结果的最高位产生一个进位或借位,则C=1,否则C=0。

各种移位指令,逻辑操作指令等也可影响CF的状态。

CF位也可表示无符号数的溢出。

溢出标志O(OverflowFlag)——在算术运算中,带符号数的运算结果超出机器所能表示的数据范围称为溢出,当溢出发生时,则O=1,否则O=0。

带符号数的数据范围。

8位运算时为:

﹣128~+127;

16位:

﹣32768~+32767。

符号标志S(SignFlag)——若运算结果的最高位(D15或D7)为1,则S=1,否则S=0。

零标志Z(ZeroFlag)——若运算的结果为0,则Z=1,否则Z=0。

奇偶标志P(ParityFlag)——若运算结果中‘1’的个数为偶数,则P=1,否则P=0。

辅助进位标志A(AuxitiaryCarryFlag)——记录运算时第3位(半个字节)产生的进位值,若第3位产生进位,则A=1,否则A=0。

在执行BCD调整时使用此标志。

方向标志DF(DirectionFlag)——用于在串处理指令中控制处理信息的方向。

当DF=1时,每次操作后使变址寄存器SI和DI减小,这样就使得串处理操作从高地址向低地址方向处理。

当DF=0时,则使SI和DI增大,使得串处理从低地址向高地址方向处理。

中断标志IF(InterruptFlag)——当IF=1时,允许CPU响应可屏蔽中断请求,否则关闭中断。

陷阱标志TF(TrapFlag)——又称单步跟踪。

用于调试时的单步方式操作。

当TF=1时,每条指令执行完后产生陷阱,由系统控制计算机;

当TF=0时,CPU正常工作,不产生陷阱。

10.指出下列MOV指令的源操作数的寻址方式。

MOVAX,1234H=立即

MOVAX,BX=寄存器

MOVAX,[BX]=寄存器间接

MOVAX,TABLE;

TABLE是一个变量名=直接

MOVAX,[1234H]=直接

MOVAX,[BX+1234H]=基址

MOVAX,[BP][SI]=基址变址

MOVAX,[BX+SI-1234H]=基址变址

11.设(DS)=2000H,(BX)=0100H,(SS)=1000H,(BP)=0010H,TABLE的物理地址为2000AH,(SI)=0002H。

求下列每条指令源操作数的存储单元地址。

MOVAX,[1234H]

MOVAX,[BX]

MOVAX,TABLE[BX]

MOVAX,[BP]

MOVAX,[BP][SI]

12.已知:

BX=1234H,BP=5678H,SI=1357H,DS=0925H,SS=0468H,CS=4B10H,指出下述指令中存储器操作数的有效地址和实际地址。

有效地址

实际地址

①MOVAL,[BX]

1234H

0A484H

②MOVAH,[BP]

5678H

0ACF8H

③MOVBH,CS:

[SI]

1357H

4C457H

④MOVDL,[SI+10H]

1367H

0A5B7H

⑤MOVCH,[BP+20H]

5698H

09D18H

⑥MOVCL,SS:

[SI+50H]

13A7H

05A27H

⑦MOVBL,DS:

[BP+30H]

56A8H

0E8F8H

⑧MOV[BP+SI+30H],AH

68DCH

0B07FH

⑨MOV[BX+SI-40H],AH

254BH

0B79BH

⑩MOVCS:

[BX+SI],DH

258BH

4D68BH

13.有两个16位字1EE5H和2A3CH分别存放在80x86微机存储器的000B0H和000B3H单元中。

请用图表示出它们在存储器里的存放情况。

地址

内容

000B0H

E5H

000B1H

1EH

000B2H

000B3H

3CH

000B4H

2AH

20100

12H

20101

34H

20102

56H

20103

78H

21200

21201

4CH

21202

0B7H

21203

65H

习题14示意图

14.有关寄存器及存储单元的内容如下:

DS=2000H,BX=0100H,SI=0002H,存储单元的内容见习题14示意图。

试说明下列各条指令执行后AX寄存器的内容。

①MOVAX,1200H

②MOVAX,BX

③MOVAX,[1200H]

④MOVAX,[BX]

⑤MOVAX,1100[BX]

⑥MOVAX,[BX][SI]

⑦MOVAX,1100[BX][SI]

第三章课外练习题

1.以下语句汇编后,CENTH的值是(A)。

buf1dw8,19

buf2db6,'

abc$'

,10dup('

5'

CENTHequbuf2—buf1

(A)4(B)8(C)14(D)17

2.在DEBUG环境下查看机器指令使用(B)命令;

显示内存数据使用(E)命令。

(A)G(B)U(C)T(D)A(E)D(F)E(G)R

二、填空题:

1.写出下列各语句在存储器中分别为变量分配多少字节,并填入括号内。

DATASEGMENT

NUM1DW20

(2)

NUM2DB‘31H,32H,33H’(11)

NUM3EQU10H(0)

NUM4DBNUM3DUP(0)(10H)

DATAENDS

2.某程序的数据段定义如下:

DATASGSEGMENT

PARTLISTDB‘PART#’

DB60

DB‘PRICE’

DB0125

DB‘DESCRIPTION’

DB‘RADIO’

LISTLENGEQU($-PARTLIST);

数组长度,用表达式表示

DATASGENDS

3.有符号定义语句如下:

BUFFDB1,2,3,‘123’

EBUFFDB0

LEQUEBUFF-BUFF

问L的值是(6)。

4.下边是汇编语言程序上机步骤,请填写出完成各步骤使用的系统程序的文件名字,并按照正确步骤给出操作顺序号。

操作名称文件名操作顺序

汇编(MASM)

(2)

编辑(EDIT)

(1)

连接(LINK)(3)

调试(DEBUG)(4)

5.自内存0F00:

0006开始的内存单元中存放着8032569876B5这六个十六进制数据,试分别写出0F00:

0008的字节型数据,字型数据、双字型数据的值。

字节型:

(56)

字型:

(9856)

双字型:

(B5769856)

6.对于如下所示的数据定义,各指令语句的执行结果是什么(以十六进制数表示)?

VR1DB-38,'

456'

,?

VR2DW6,5DUP

(2)

①MOVAL,VR1(-38)

②ADDVR2,59(65)

③MOVBL,VR1+2(53)

7.对于第6小题,为VR1变量分配了(5)个字节,为VR2变量分配了(12)个字节。

8.汇编源程序的文件扩展名是(.ASM)。

9.以下语句汇编后,count的值是(9)。

Buf1db3,5,'

abcd$'

Buf2dw0fabH

Countequ$-buf1

10.保存当前栈顶地址的寄存器是(SP)。

11.在程序运行时执行的语句是(指令)语句,它告诉CPU要执行的操作。

12.(伪指令)语句是由汇编程序在汇编过程中执行的语句。

三、判断题(判断每题正误,正确的在题后括号内划“√”,错误的划“×

1.汇编语言是用指令的助记符、符号地址、标号等符号书写程序的语言。

(√)

2.通过ASSUME伪指令给段寄存器赋初值。

(×

3.在汇编语言中当缺省为十进制数时,表示十六进制数要用H结尾。

(√)

4.在DEBUG中,缺省值为十进制数。

(×

5.在标志IF=0时,CPU忽略所有的中断请求。

(√)

四、简答

1.标号具有哪3种属性?

该3种属性的属性值分别表示什么?

标号具有三种属性:

段、偏移和类型属性。

①段属性:

定义标号的段起始地址,此值必须在一个段寄存器中,而标号的段则总是在CS寄存器中。

段属性值可以用SEG算符求得。

②偏移属性:

标号的偏移地址是从段起始地址到定义标号的位置之间的字节数。

标号偏移量属性值可由OFFSET算符求得。

③类型属性:

类型属性用来指出该标号是在本段内引用还是在其他段中引用的。

标号类型值可用TYPE算符求得。

 

第四章课外练习题

1.若栈顶的物理地址为20100H,当执行完指令PUSHAX后,栈顶的物理地址为(D)。

(A)20102H(B)20101H(C)200FFH(D)200FEH

2.下列指令执行后,DAB中第一个字的内容是(B)。

DABDB0FAH,0DAH,0F5H,0D0H,5H

DAB_lequ$-DAB

MOVAL,DAB_L

XCHGDAB,AL

(A)05DAH(B)0DA05H(C)0F5DAH(D)0DAF5H

3.执行下列指令后,正确的结果是(B)。

MOVAL,100

MOVBL,-2

(A)AL=100H,BL=02H(B)AL=64H,BL=0FEH

(C)AL=64H,BL=82H(D)AL=100H,BL=0FEH

4.完成同指令XCHGAX,BX相同功能的指令或指令序列是(D)。

(A)MOVAX,BX(B)MOVBX,AX

(C)PUSHAX(D)MOVCX,AX

POPBXMOVAX,BX

MOVBX,CX

5.为了使MOVAX,VAR指令执行后,AX寄存器中的内容为4142H,下面哪一条数据定义会产生不正确的结果?

(C)

(A)VARDW4142H(B)VARDW16706

(C)VARDB42H,41H(D)VARDW‘AB’

6.假定用伪指令DATADB12H,34H定义了两个字节数据,现需要将数据12H取入寄存器AL,将数据34H取入寄存器AH,能完成此功能的程序段是(D)。

(A)MOVAX,DATA(B)MOVSI,DATA

MOVAX,[SI]

(C)LEASI,DATA(D)MOVSI,OFFSETDATA

MOVAX,[SI]MOVAL,[SI]

MOVAH,[SI]MOVAH,[SI+1]

7.POP指令的操作数不能是(D)。

(A)BP(B)[BX](C)字变量的SUM(D)CS

二、简答题

1.设ARRAY是字数组的首地址,写出将第5个字元素取出送AX寄存器的指令序列,要求使用以下几种寻址方式:

①直接寻址;

(MOVAX,ARRAY+8)

②寄存器间接寻址;

(LEABX,ARRAY+8和MOVAX,[BX])

③变址寻址;

(MOVSI,8和MOVAX,ARRAY[SI])

④基址变址寻址。

(LEABX,ARRAY及MOVSI,8和MOVAX,[BX][SI])

2.设有以下程序段,求执行完此程序段后AL寄存器中的内容。

(12H)

ABCEQU2

DATA1DB20H

DATA2DW1234H

MOVAL,DATA1+ABC

3.下列每组指令有何区别?

①MOVAX,1234HAX←1234H

MOVAX,[1234H]AX←1234H的地址

②MOVAX,TABLEAX←TABLE的数据

MOVAX,[TABLE]AX←TABLE的数据

③MOVAX,TABLEAX←TABLE的数据

LEAAX,TALBEAX←TABLE的地址

④MOVAX,BXAX←BX的内容

MOVAX,[BX]AX←BX的地址里的内容

4.写一指令序列,将3456H装入DS寄存器。

MOVAX,3456H

MOVDS,AX

5.不可以从堆栈向哪个段寄存器弹出数据?

CS

6.若(SS)=2000H,(SP)=000AH,先执行将字数据1234H和5678H压入堆栈的操作,再执行弹出一个字数据的操作,试画出堆栈区及SP的内容变化过程示意图(标出存储单元的物理地址)。

堆栈地址

20006H

执行后SP

20007H

20008H

最后SP

20009H

执行前SP

2000AH

7.在8086∕8088微处理器中,PUSH和POP指令在堆栈与寄存器或存储单元之间传送数据时,一次总是传送多少字节?

2字节。

8.解释XLAT指令是怎样转换AL寄存器中的内容的。

并编写一段程序用XLAT指令将BCD码的0~9转换成对应的ASCII,并将ASCII存入数组ARRAY中。

XLAT指令是通过

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 研究生入学考试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1