汇编语言复习题A.docx

上传人:b****6 文档编号:6260464 上传时间:2023-01-04 格式:DOCX 页数:11 大小:20.76KB
下载 相关 举报
汇编语言复习题A.docx_第1页
第1页 / 共11页
汇编语言复习题A.docx_第2页
第2页 / 共11页
汇编语言复习题A.docx_第3页
第3页 / 共11页
汇编语言复习题A.docx_第4页
第4页 / 共11页
汇编语言复习题A.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

汇编语言复习题A.docx

《汇编语言复习题A.docx》由会员分享,可在线阅读,更多相关《汇编语言复习题A.docx(11页珍藏版)》请在冰豆网上搜索。

汇编语言复习题A.docx

汇编语言复习题A

《汇编语言》复习题A

一、填空题

1、26.25D=B=O=H

2、-56D的原码为B,反码为B,补码为B。

3、0C51H的反码为B,补码为B。

4、十进制数87的压缩BCD码为B,非压缩BCD码为B。

5、若(CS)=0100H,(IP)=1051H,则当前指令的物理地址为。

6、设(BX)=1000H,(DI)=0010H,(DS)=2100H,在指令MOVAX,[BX+DI]中,源操作数的寻址方式为;物理地址为。

7、设BUF为数据段0234H单元的符号名,其中存放的内容为3456H。

写出下列指令单独执行后的结果。

(1)MOVAX,BUF(AX)=

(2)LEAAX,BUF(AX)=

8、子程序的参数传递方法包括、、。

9、实模式下存储器的20位物理地址由加形成。

二、选择题

1、下列通用数据传送指令的几种传送中,错误的传送方式是()。

A、从累加器到存储器B、立即数到存储器

C、从寄存器到存储器D、从存储器到存储器

2、使进位位置1的指令是()。

A、CLCB、CMCC、STCD、NOP

3、设AL,BL中都是有符号数,当AL<=BL时转至NEXT处,在CMPAL,BL指令后,应选用正确的条件转移指令是()。

A、JBEB、JNGC、JNAD、JNLE

4、指令LOOPZ的循环执行条件是()。

A、CX<>0并且ZF=0B、CX<>0或ZF=0

C、CX<>0并且ZF=1D、CX<>0或ZF=1

5、下列合法的变量名称是()。

A、9BUFB、ADDC、BUF9D、ASSUME

6、一条指令中目的操作数不允许使用的寻址方式是()。

A、寄存器寻址B、立即数寻址C、变址寻址D、寄存器间接寻址

7、DOS的功能调用号必须送()寄存器。

A、DLB、DHC、ALD、AH

8、在实模式下,存储器管理采用分段模式,每段大小可达()。

A、64MB、1MC、64KD、16字节

9、用来存放下一条将要执行的指令地址的寄存器是()。

A、SPB、IPC、BPD、CS

10、要使串操作从低地址向高地址进行,应把标志位设置为()。

A、TF=1B、TF=0C、DF=1D、DF=0

三、判断题

1、XLATBX,AL()

2、POPCS()

3、INAX,34H()

4、SHRBL,AL()

5、PUSHAL()

6、CS是代码段寄存器,在CS中存放代码段的段地址。

()

7、逻辑运算符和逻辑运算指令区别在于:

逻辑运算指令的功能在汇编阶段完成,逻辑运算符的功能在程序执行阶段完成。

()

8、在同一程序中,EQU不能对一个符号重复定义,=可对一个符号重复定义。

()

9、堆栈坚持后进先出的原则

()

10、两无符号字节数相除,需预先执行CBW指令。

()

四、读程序题

1、设AL=85H,BL=0FH,写出下列各指令单独执行后的结果。

(1)NEGAL;AL=H

(2)ORAL,BL;AL=H

(3)TESTAL,01H;AL=H

(4)ANDAL,BL;AL=H

ZF=

2、已知程序如下:

CODESEGMENT

ASSUMECS:

CODE

BEGIN:

MOVBL,17

MOVCX,8

CLC

NEXT1:

MOVBH,30H

ROLBL,1

JNCNEXT2

ADDBH,1

NEXT2:

CALLPROC1

LOOPNEXT1

MOVBH,’B’

CALLPROC1

MOVAH,4CH

INT21H

PROC1PROC

MOVDL,BH

MOVAH,2

INT21H

RET

PROC1ENDP

ENDBEGIN

(1)子程序PROC1的功能是。

(2)子程序PROC1入口参数是。

(3)若RET指令执行前SP=0008H,则RET执行后,SP的值为。

(4)程序执行完毕,屏幕上显示内容是。

(5)主程序和子程序之间的参数传递方式是。

五、编程题

1、写出短指令序列,将CL内容除以BL的内容,结果乘4并存入AX寄存器中(设CL和BL中均为无符号数)。

2、在AL和BL寄存器中存放着两个有符号数,写出短指令序列比较两数的大小,并将大数存入MAX单元,小数存入MIN单元。

3、编写子程序,将字节单元中的2进制数转换成16进制数输出。

入口参数:

AL中存放待转换的数据。

出口参数:

要求不改变任何寄存器的内容。

4、编写子程序将两个多字节二进制数相减。

入口参数:

SI、DI分别指向两个数的首地址,BX指向差的首地址,CX中存放多字节的长度。

出口参数:

BX指向差的首地址。

5、设从内存单元BUF开始存放下列有符号数据:

1234H,0ED12H,0,2304H,0,7002H,编写完整的源程序统计其中的正数、0及负数的个数。

6、在BUF所指向的字存储单元中,存放若干个字数据3500H,0010H,1010H,8010H,编写完整的源程序计算这些数据之和,和放入SUM字单元中。

《汇编语言》复习题B

一、填空题

1、25=B=O=H

2、32D的原码为B,反码为B,补码为B。

3、十进制数15的压缩BCD码为;非压缩BCD码为。

4、8086CPU可以直接寻址的内存空间大小为,程序员在编程时需要把存储器分段,每段的大小不能超过。

5、设DI=0100H,DS=3000H,在指令MOVCX,[100+DI]中,源操作数的寻址方式为;物理地址为。

6、汇编语言源程序有三种基本结构形式:

顺序结构、和。

7、从功能上,8086CPU分为

和两部分。

8、直接输入/输出指令的最大端口号是,间接输入/输出指令的端口号必须送寄存器。

9、DIVBX指令执行后,余数在中,商在中。

二、选择题

1、8086CPU中指令队列有()个字节。

A4B6C8D16

2、DF=0,执行CMPSW指令后()。

ASI减1,DI减1         BSI加1,DI加1

CSI减2,DI减2  DSI加2,DI加2

3、在DEBUG下,u命令的作用是()。

A反汇编     B汇编C查看数据    D写入数据

4、用来存放下一条将要执行的指令地址的寄存器是()。

ASPBIPCBPDCS

5、完成将有符号数BX的内容除以2的正确指令是()。

ASHRBX,1BSARBX,1

CSALBX,1DRCRBX,1

6、在汇编语言中,标号在()段使用。

ADSBESCCSDSS

7、如AX=8001H,则指令NEGAX执行后,AX的值是()。

A0FFFFHB7FFEHC0FFFEHD7FFFH

8、下列通用数据传送指令的几种传送中,错误的传送方式是()。

A从累加器到存储器B从寄存器到寄存器

C从寄存器到存储器D从存储器到存储器

9、如果AL=90H,则执行CBW后,AX中的内容为()。

AFF90HB0090HC1090HD不定

10、使进位位清0的指令是()。

ACLCBCMCCSTCDNOP

三、判断题

1、MOV[BX],[SI]()

2、XCHGCS,BX()

3、PUSHCS()

4、POPCL()

5、SHLBX,CL()

6、OUT50H,AX()

7、DIVAX,BL()

8、两带符号字节数相除,需预先执行CBW指令。

()

9、伪指令能够翻译成机器码。

()

10、堆栈坚持先进先出的原则

()

四、读程序题

1、假设有以下数据定义伪指令,写出下列各指令单独执行后的结果。

DATA1DB88H,15H

DATA2DW1234H,2278H

CNTEQU($-DATA2)/2

(1)MOVAX,WORDPTRDATA1;AX=

(2)MOVAL,BYTEPTRDATA2;AL=

(3)MOVCX,CNT;CX=

(4)MOVBL,TYPEDATA2;BL=

(5)MOVAL,SIZEDATA2;AL=

2、已知程序段如下:

MOVDX,0

CLC

MOVAX,1432H

MOVCL,4

ROLAX,CL;①

DECAX;②

MOVBX,2

MULBX;③

(1)指令①执行后AX=CF=

(2)指令②执行后AX=CF=

(3)指令③执行后AX=

五、编程题

1、定义一个名字为DATA的数据段,段中的变量和数据如下:

D1为字符串变量:

‘ABCD’

D2为字变量:

1234

D3为字变量:

8个5

2、编写标准单字符输出子程序。

子程序名称:

OUTPUTP

入口参数:

输出字符的ASCII放在DL寄存器中。

3、编写完整的源程序实现把数据段BUF1所指向的内存单元中的字数据1245H送扩展段BUF2所指向的内存单元中。

4、在BUF开始的内存区存放2个无符号字数据,编写完整的源程序比较其大小,大数存入MAX开始的字单元,小数存入MIN开始的字单元。

5、设从STRING开始存放一以#为结束标志的字符串:

'3$6AaAgzZ[}#',把字符串中的字符分类,数字送入NUM开始的内存区,字母送入CHAR开始的内存区,其它字符存到OTHER开始的内存区。

6、设从内存单元BUF开始存放下列有符号字数据:

0123H,1,8041H,0,0A004H,0,编写完整的源程序统计其中的正数、零及负数的个数,结果分别存放在PLUS_NO、ZERO_NO、POSITIVE_NO所指向的字节单元。

《汇编语言》复习题C

一、填空题

1、38D=B=O=H

2、-12D的原码为,反码为,补码为。

3、5B21H的反码为,补码为。

4、十进制数65的非压缩BCD码为,压缩BCD码为。

5、若(CS)=1100H,(IP)=1050H,则当前指令的物理地址为。

6、已知(AX)=789AH,问执行指令CBW后,(AX)=____________。

7、使用DOS中2号功能调用时,需先将______________送入DL中。

8888888、与MOVAX,OFFSETBUF等效的LEA指令是____________。

9、在汇编语言中,标号在段使用,标号的属性有、、。

10、DIVCL指令执行后,余数在中,商在中。

二、选择题

1、一条指令中目的操作数不允许使用的寻址方式是()。

A寄存器寻址B立即数寻址C变址寻址D寄存器间接寻址

2、LDSSI,[2000H]指令的功能是()。

A把地址2000H送SIB把地址2000H送DS

C把地址2000H字单元的内容送SI,把2002H单元的内容送DS

D把地址2000H字单元的内容送DS,把2002H单元的内容送SI

3、关于POP指令,以下正确的是()。

A该指令的操作数可以是立即数B该指令执行后,栈顶指针加1

C该指令执行后,栈顶指针减2D该指令执行后,栈顶指针加2

4、如果算术或逻辑运算结果为0,则()。

AZF=0BZF=1CSF=0DSF=1

5、下列合法的变量名称是()。

A9NEXTBSUBCNEXT1DASSUME

6、完成对字单元BUF的内容加1运算,下面错误的指令是()。

AMOVBX,BUFBMOVBX,OFFSETBUF

INCBXINCWORDPTR[BX]

MOVBUF,BX

CMOVBX,BUFDLEABX,BUF

INCWORDPTR[BX]INCWORDPTR[BX]

7、DOS的功能调用号必须送()寄存器。

ADLBDHCALDAH

8、在DEBUG下,用()命令修改存储单元的内容。

AEBRCDDG

9、若SP=0008H,则段内返回指令RET2执行后,SP的值为()。

A0008HB000AHC000CHD0004H

10、以下说法错误是()。

AJMP是条件转移指令B条件转移指令只能实现段内转移

C条件转移指令可转移的范围是-128~+127

D无条件转移指令可以实现段间转移

三、判断题

1、MOV[BX],[2000H]()

2、POPAL()

3、SHLBX,CL()

4、INAX,1234H()

5、MULCL()

6、ROLAL,3()

7、逻辑运算符和逻辑运算指令区别在于:

逻辑运算符的功能在汇编阶段完成,逻辑运算指令的功能在程序执行阶段完成。

()

8、在同一程序中,=不能对一个符号重复定义,EQU可对一个符号重复定义。

()

9、8086CPU内有2字节的指令队列。

()

10、CS是代码段寄存器,在CS中存放代码。

()

四、读程序题

1、设有如下段定义:

DATASEGMENT

BUF1DB2,-1

BUF2DW?

,1234H,-2

CNTEQU($-BUF2)/2

DATAENDS

(1)操作数-1所在的内存单元的偏移地址为_____,在内存中占个字节单元。

(2)操作数-2所在的内存单元的偏移地址为_____,在内存中占个字节单元。

(3)变量CNT的值为_____。

2、已知源程序如下:

PROC1PROC

MOVCX,16

CLC

NEXT1:

MOVDX,0

ROLBX,1

ADCDL,30H

CALLPROC2

LOOPNEXT1

MOVDL,’B’

CALLPROC2

RET

PROC1ENDP

PROC2PROC

MOVAH,2

INT21H

RET

PROC2ENDP

(1)子程序PROC1的功能是_____,入口参数分别是_____。

(2)子程序PROC2的功能是_____,入口参数分别是_____。

(3)如果子程序PROC1的入口参数初始值为8001H,程序执行完毕,屏幕上显示的内容是_____。

五、编程题

1、定义一个名字为DATA1的数据段,段中的变量及数据如下:

BUFA为字节变量:

12H,-1,0ABH,200

BUFB为字变量:

5个1000H,2000

BUFC为字符串变量:

‘HuiBianYuYan’

2、在AL寄存器存放一8位有符号数,设计短指令序列求该数的绝对值,结果存入JDZ所指向的字节单元。

3、在BUF开始的内存区存放一个以#为结束标志的字符串,设计短指令序列计算该字符串的长度并存入RESU字节单元。

4、在BUF开始的内存区存放2个无符号字数据,编写完整的源程序比较其大小,大数存入MAX开始的字单元,小数存入MIN开始的字单元。

5、编写完整的源程序,求满足x的阶乘小于500的最大x值,将x在屏幕上显示输出。

6、编程完整的源程序计算表达式Z=X*Y+X/2-Y的值,X和Y的值由键盘输入(X、Y均为1位十进制数,输入功能用调用子程序的方法实现),结果Z存放在RES所指向的字节单元中。

 

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

当前位置:首页 > 表格模板 > 合同协议

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

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