微型计算机原理.docx

上传人:b****9 文档编号:23411824 上传时间:2023-05-16 格式:DOCX 页数:22 大小:24.12KB
下载 相关 举报
微型计算机原理.docx_第1页
第1页 / 共22页
微型计算机原理.docx_第2页
第2页 / 共22页
微型计算机原理.docx_第3页
第3页 / 共22页
微型计算机原理.docx_第4页
第4页 / 共22页
微型计算机原理.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

微型计算机原理.docx

《微型计算机原理.docx》由会员分享,可在线阅读,更多相关《微型计算机原理.docx(22页珍藏版)》请在冰豆网上搜索。

微型计算机原理.docx

微型计算机原理

    ====《汇编语言程序设计》模拟试卷08====

 一、填空(每空1分,总共30分)

1.计算机的中央处理机包括:

__________和_________两部分。

2.机器字长为16位,若N1=117,用二进制数和16进制数表示时分别为___________B和________H。

若N2=–117,则[N2]原=______________B,[N2]补=____________________H.

3.若某一存储单元的地址为2000:

2008,则该存储单元的段地址为__________H,偏移地址为___________H,物理地址为_______________H。

4.假设(SS)=2250H,(SP)=0140H,如果在堆栈中存入5个数据,则栈顶的物理地址为_____________H,若又从中取出2个数据,则栈顶的物理地址为_____________H。

6.执行下列两条指令:

MOVBX,9048H

SUBBH,BL

执行后,各标志位分别为:

CF=___,ZF=___,SF=___,OF=___,AF=___。

7.指出下列各指令中源操作数的寻址方式,并计算指令执行后AX的内容。

其中:

(DS)=3000H,(ES)=4000H,(SS)=5000H,(AX)=1200H,(BX)=1300H,

(BP)=1400H,(SI)=1500H,(42000H)=1000H,(51400H)=1280H,(33800H)=2008H。

①MOVAX,1250H;_________________寻址方式,(AX)=__________。

②MOVAX,ES:

[2000H];_______________寻址方式,(AX)=__________。

③MOVAX,[BP];________________寻址方式,(AX)=__________。

④XCHGAX,[BX+SI+1000H];_______________寻址方式,(AX)=__________。

⑤MOVAX,[BX+2500H];________________寻址方式,(AX)=__________。

8.执行下列指令,写出每条指令执行后右边所示的内容:

MOVAL,59H

ADDAL,68H;(AL)=______,CF=_______,AF=_________。

DAA;(AL)=_______。

二.单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干的括号内。

每小题2分,共20分)

1、下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是()

A、AX,BX,CX,DXB、BX,BP,SI,DI

C、SP,IP,BP,DXD、CS,DS,ES,SS

2、循环指令LOOPNZ终止循环的条件是()。

A、CX=0,且ZF=0B、CX=0,或ZF=1

C、CX≠0,且ZF=0D、CX≠0,或ZF=1

3、对寄存器AX的内容乘以4的正确指令序列是()。

A、SHRAX,1B、SHLAX,1

SHRAX,1SHL,AX,1

C、ROLAX,1D、RCRAX,1

ROLAX,1RCRAX,1

4、设DH=10H,执行NEGDH指令后,正确的结果是()。

A、DH=10HCF=1B、DH=0F0HCF=0

C、DH=10HCF=0D、DH=0F0HCF=1

5、下面指令执行后,改变AL寄存器内容的指令是()。

A、TESTAL,02HB、ANDAL,BL

C、CMPAL,BLD、ORAL,AL

6、与MOVBX,OFFSETVAR指令完全等效的指令是()。

A、LEABX,VARB、LDSBX,VAR

C、LESBX,VARD、MOVBX,VAR

7、BUFDW10HDUP(3DUP(2,10H),3,5)

上述语句汇编后,为变量BUF分配的存储单元字节数是()。

A、80HB、100HC、124D、192

8、在汇编语言程序的开发过程中使用宏功能的顺序是()。

A、宏定义,宏调用B、宏定义,宏展开

C、宏定义,宏调用,宏展开D、宏定义,宏展开,宏调用

9、汇编语言源程序中,每个语句由四项组成,如语句要完成一定功能,那么该语句中不可省略的项是()。

A、名字项B、操作项

C、操作数项D、注释项

10、完成将BX清零,并使标志寄存器CF清零,下面指令错误的是(   )。

A)SUBBX,BX B)XOR BX,BX

C)MOV BX,0   D)AND BX,0000H

三.判断下列指令的正误,若错误,请说明原因或改正。

(每小题2分,共20分)

其中:

VAR1,VAR2为字节变量

1.MOVBX,OFFSETVAR1;()

2.MOVAL,[BX+5];()

3.MOVAX,VAR1;()

4.MOVAX,WORDPTRVAR1+1;()

5.INC[AX];()

6.LEADI,VAR1[BX][SI];()

7.MOV134H,AX;()

8.ADDCS,AX;()

9.MOVVAR1,VAR2;()

10.POPCX;()

四.画出下面所定义的各变量在存储器中的存储情况,并将变量标注到存储单元的右边的。

(5分)

(其中A、B的ASCIIW为41H和42H)

DATA1DB12H

DATA2DD3*20

MESS1DW‘AB’

BUFFERDB2DUP(?

MESS2DB‘BA’

五.写出下面的程序片段(不必写完整的上机程序,只写出完成此功能的程序片段)。

(每小题5分,共10分)

1.若要测试AL寄存器中第6位是否为1(但不能改变AL的值),如为1则转移到EXI去执行,否则将其第3、4位变反。

2.有一个首地址为ARRAY的M字数组,试编写一个程序:

求出该数组的内容之和(不考虑溢出),并把结果存入TOTAL中。

六.程序设计题。

(要求写出完整的汇编语言源程序,可以上机调试运行,并给出适当的注释,15分)

在存储器中有一个首地址为ARRAY的N字数组为:

3,5,0,23,–37,49,–52,65,78,0,105要求测试其中正数、0、及负数的个数,正数的个数放在DI中,0的个数放在SI中,并根据N–(DI)–(SI)求得负数的个数放在AX中。

DATASEGMENT

ARRAYDW3,5,0,23,-37,49,-52,65,78,0,105

NDW11

DATAENDS

===《汇编语言程序设计》模拟试卷06====

 一、填空(每空1分,总共40分)

1.微型计算机通常由__________,_________,__________,_____________和__________五大部分。

2.设机器字长为16位,若N1=117,用二进制数和16进制数表示时分别为_____________B和__________H。

若N2=–117,则[N2]原=______________B,[N2]补=_______________________H.

3.若某一存储单元的地址为8888:

2001,则该存储单元的段地址为__________H,偏移地址为___________H,物理地址为_______________H。

4.假设(SS)=2250H,(SP)=0140H,如果在堆栈中存入5个数据,则栈顶的物理地址为_____________H,若又从中取出2个数据,则栈顶的物理地址为_____________H。

5.在存储器里以______为单位存储信息;在机器里,访问存储器都是以_____为单位进行的,也就是说,机器是以_____(奇或偶)地址访问存储器的。

6.执行下列两条指令:

MOVBX,7896H

ADDBH,BL

执行后,各标志位分别为:

CF=___,ZF=___,SF=___,OF=___,PF=___。

7.指出下列各指令中源操作数的寻址方式,并计算指令执行后AX的内容。

其中:

(DS)=3000H,(ES)=4000H,(SS)=5000H,(AX)=1200H,(BX)=1300H,

(BP)=1400H,(SI)=1500H,(42000H)=2003H,(51400H)=2002H,(33800H)=2001H。

①MOVAX,1250H;__________________寻址方式,(AX)=__________。

②MOVAX,ES:

[2000H];_____________寻址方式,(AX)=__________。

③MOVAX,[BP];________________寻址方式,(AX)=__________。

④XCHGAX,[BX+SI+1000H];_____________寻址方式,(AX)=__________。

⑤MOVAX,[BX+2500H];______________寻址方式,(AX)=__________。

8.执行下列指令,写出每条指令执行后右边所示的内容:

MOVAL,28H

ADDAL,68H;(AL)=______,CF=_______,AF=_________。

DAA;(AL)=_______。

9.对于下面的数据定义:

DATA1DW10

DATA2DB2,8

DATA3DW100DUP(0)

请写出下列的MOV指令分别被汇编后的指令形式:

MOVBX,((DATA1LT5)AND20)OR((DATA1GE5)AND30)

;__________________________。

MOVSI,TYPEDATA2

;___________________________。

MOVCX,LENGTHDATA3

;__________________________。

MOVCX,SIZEDATA3

;__________________________。

二.判断下列指令是否正确,若错误,请说明原因。

(20分)

其中:

VAR1,VAR2为字节变量。

1.MOVBX,OFFSETVAR1;()

2.MOVAL,[BX+5];()

3.MOVAX,VAR1;()

4.MOVAX,WORDPTRVAR1+1;()

5.INC[AX];()

6.LEADI,VAR1[BX][SI];()

7.MOV2134H,AX;()

8.ADDCS,AX;()

9.MOVVAR1,VAR2;()

10.INC[BX];()

三.画出下面所定义的各变量在存储器中的存储情况,并将变量标注到存储单元的右边的。

(5分)

(其中A、B的ASCIIW为41H和42H)

DATA1DB12H

DATA2DD3*20

MESS1DW‘AB’

BUFFERDB2DUP(?

MESS2DB‘BA’

四.写出下面的程序片段(不必写完整的上机程序,只写出完成此功能的程序片段)。

(每小题5分,共10分)

1.假设在数据段中有一字符串string1,其长度为20,要求把它们传送到附加段string2中,假设DS和ES都初始化在同一数据段中。

2.有一个首地址为ARRAY的M字数组,试编写一个程序:

求出该数组的内容之和(不考虑溢出),并把结果存入TOTAL中。

五.宏定义如下,试展开下面的宏调用。

(每题5分,共10分)

1.Dfmess1MACROLAB,NUM,NAME

LAB&NUMDB‘HelloMR.&NAME’,0DH,0AH,0

ENDM;宏调用语句:

Dfmess1Mess,1,Assembly

;宏展开为:

2.Dfmess2MACROMESS

DB‘&MESS’,0DH,0AH,0

ENDS

;宏调用语句:

Dfmess2

>90>

Dfmess2%10+5–2

宏展开为:

六.程序设计题。

(要求:

写出完整的汇编语言源程序,可以上机调试运行,并给出适当的注释,15分)

试编写程序,对BUF字节存储区的3个数进行比较,并按比较结果显示如下信息:

1.如果3个数都不相等则显示2

2.如果3个数中有两个相等则显示1

3.如果3个数都相等则显示0

(提示:

自己可以在数据段中随意定义3个数据,然后比较,若第一数和第二数相等,接着比较第三数,相等则显示0,否则显示1;若第一数和第二数不相等,接着比较第三数,相等则显示1,否则显示2).

DATASEGMENT

BUFDB48,50,10

DATAENDS

    ====《汇编语言程序设计》模拟试卷10====

 一、填空(每空1分,总共30分)

1.计算机系统主要包括硬件和软件两部分,其中硬件主要有:

__________,_________,和__________三个主要部分,用系统总线把他们连接在一起;软件主要分为_____________和_________________两大类。

2.225D=     B=     H

3.已知X=-1011011,求[X]补=      。

4.已知[X]补=11010101,则X=      D。

3.若某一存储单元的地址为2609:

3688,则该存储单元的段地址为__________H,偏移地址为___________H,物理地址为_______________H。

5.假设(SS)=2250H,(SP)=0140H,如果在堆栈中存入5个数据,则栈顶的物理地址为_____________H,若又从中取出3个数据,则栈顶的物理地址为_____________H。

6.在8086/8088中,存储器以______为单位存储信息;在机器里,访问存储器都是以_____为单位进行的,也就是说,机器是以_____(奇或偶)地址访问存储器的。

7.执行下列两条指令:

MOVBX,4800H

SUBBL,5

执行后,各标志位分别为:

CF=___,ZF=___,SF=___,OF=___,AF=___。

8.指出下列各指令中源操作数的寻址方式,并计算指令执行后AX的内容。

其中:

(DS)=3000H,(ES)=4000H,(SS)=5000H,(AX)=1200H,(BX)=1300H,(BP)=1400H,(SI)=1500H,(42000H)=1111H,(51400H)=2222H,(33800H)=9999H。

①ADDAX,2008H;__________________寻址方式,(AX)=__________。

②MOVAX,ES:

[2000H];________________寻址方式,(AX)=__________。

③MOVAX,[BP];_________________寻址方式,(AX)=__________。

④XCHGAX,[BX+SI+1000H];________________寻址方式,(AX)=__________。

二.请将下列左边的术语和右边的解释联系起来,在括号中填写响应的代号字母(10分)

1.CPU()A指CPU在交换、加工、存储信息时的基本长度

2.汇编语言()B记录指令操作结果的标志,如OF、SF、ZF、AF、PF、CF

3.机器语言()C由汇编程序在汇编过程中执行的指令

4.指令()D告诉CPU要执行的操作,在程序运行时执行

5.伪指令()E分析、控制并执行指令的部件,由运算器和控制器组成

6.控制标志()F能被计算机直接识别的语言

7.状态标志()G唯一代表存储空间中每个字节单元的地址

8.物理地址()H控制操作的标志,如DF、ZF、TF

9.汇编程序()I用指令的助记符、符号地址、标号等书写程序的语言

10.字长()J把汇编语言程序翻译成机器语言程序的系统程序

三.判断下列指令是否正确,若错误,请说明原因。

(20分)

1.MOVDX,100;()

2.MOVAL,[BX+5];()

3.MOV[1000H],[2000H];()

4.MOVAX,[BX+BP+1000H];()

5.PUSHAX,WORDPTR[SI];()

6.MOVDS,ES;()

7.INC[AX];()

8.OUTCX,AL;()

9.MOV2134H,AX;()

10.ADDCS,AX;()

三.改错题(15分)

下列程序求一组带符号字节数据的平均值,数据的首地址为DATA,数据个数存放在CNT单元,但程序有逻辑错误,请将错误改正过来。

1DSEGSEGMENT

2DATADB100.-100,90,20,-120,60

3CNTDW0005H

4AVERDB?

5DSEGENDS

6CSEGSEGMENT

7ASSUMECS:

CSEG,DS:

DSEG

8MAINPROCFAR

9PUSHDS

10XORDX,DX

11PUSHDX

12MOVAX,DS

13MOVDS,AX

14MOVSI,OFFSETDATA

15MOVCX,OFFSETCNT

16AGAIN:

ADDDL,[SI]

17ADCDH,0

18DECCX

19LOOPAGAIN

20DIVCL

21MOVAVER,AL

22RET

23MAINENDP

24CSEGENDS

25ENDMAIN

四、宏定义如下,试展开下面的宏调用。

(每题5分,共10分)

1.Dfmess1MACROLAB,NUM,NAME

LAB&NUMDB‘HelloMR.&NAME’,0DH,0AH,0

ENDM;宏调用语句:

Dfmess1Mess,5,zhang

;宏展开为:

2.Dfmess2MACROMESS

DB‘&MESS’,0DH,0AH,0

ENDS;宏调用语句:

Dfmess2

>90>

Dfmess2%(2008-2000+4)

;宏展开为:

七.程序设计题(要求:

写出完整的汇编语言源程序,包括段的定义,寄存器保护等,并给出适当的注释,15分)

数据X定义如下,试编写程序,计算下面函数的值。

当X<0时,S=2X

当0≤X≤10时,S=3X

当XX>10时,S=4X

DataSegment

XDW34

SDW?

DataEnds

====《汇编语言程序设计》模拟试卷06参考答案====

 一、填空(每空1分,总共40分)

1.运算器,控制器,存储器,输入设备,输出设备

2.0000000001110101B,0075H,1000000001110101B,0FF8BH

3.8888H,2001H,8A881H

4.22636H,2263AH

5.字节,字,偶

6.1,0,0,0,0

7.立即寻址2450H

直接寻址2003H

寄存器间接寻址2002H

基址+变址相对寻址2001H

寄存器相对寻址2001H

8.执行下列指令,写出每条指令执行后右边所示的内容:

90,0,1,96

9.MOVBX,30

MOVSI,1

MOVCX,100

MOVCX,200

二.判断下列指令是否正确,若错误,请说明原因。

(20分)

1.(√)

2.(√)

3.(×)类型不匹配

4.(√)

5.(×)AX不能为地址计数器

6.(×)相对基址变址寻址方式形成的值在汇编指令时是未知的

7.(×)立即数不能为目的操作数

8.(×)CX不能为目的操作数

9.(×)存储单元之间不能直接传送

10.(√)

四.写出下面的程序片段(每小题5分,共10分)

1.MOVCX,20

LEASI,string1

LEADI,string2

CLD

MOVSB

2.MOVCX,M

LEASI,ARRAY

MOVAX,0

START:

ADDAX,[SI]

ADDSI,2

LOOPSTART

MOVTOTAL,AX

五.宏定义如下,试展开下面的宏调用。

(每题5分,共10分)

1.1Mess1DB‘HelloMR.Assembly’,0DH,0AH,O

2.1DB‘Thisismyscore>90’,0DH,0AH,O

1DB‘13’,0DH,0AH,O

六.程序设计(15分)

DATASEGMENT

BUFDB48,50,10

DATAENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA

START:

MOVAX,DATA

MOVDS,AX

XORDX,DX

MOVAL,BUF

CMPAL,BUF+1

JZDISP2

CMPAL,BUF+2

JZDISP1

MOVAL,BUF1

CMPAL,BUF2

JZDISP2

MOVDL,32H

MOVAH,02H

INT21H

JMPEXIT

DISP1:

MOVDL,31H

MOVAH,02H

INT21H

JMPEXIT

DISP2:

CMPAL,BUF+2

JNZDISP1

MOVDL,30H

MOVAH,02H

INT21H

EXIT:

MOVAH,4CH

INT21H

CODEENDS

ENDSTART

    ====《汇编语言程序设计》模拟试卷08参考答案====

 一、填空(每空1分,总共30分)

1.运算器,控制器。

2.0000000001110101B,0075H,1000000001110101B,0FF8BH3.2000,2008,22008。

4.22636,2263A

6.0,0,0,1,1

7.立即寻址2450H

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

当前位置:首页 > 自然科学 > 物理

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

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