汇编模拟题0Word文件下载.docx

上传人:b****6 文档编号:19274759 上传时间:2023-01-05 格式:DOCX 页数:22 大小:27.19KB
下载 相关 举报
汇编模拟题0Word文件下载.docx_第1页
第1页 / 共22页
汇编模拟题0Word文件下载.docx_第2页
第2页 / 共22页
汇编模拟题0Word文件下载.docx_第3页
第3页 / 共22页
汇编模拟题0Word文件下载.docx_第4页
第4页 / 共22页
汇编模拟题0Word文件下载.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

汇编模拟题0Word文件下载.docx

《汇编模拟题0Word文件下载.docx》由会员分享,可在线阅读,更多相关《汇编模拟题0Word文件下载.docx(22页珍藏版)》请在冰豆网上搜索。

汇编模拟题0Word文件下载.docx

7.下面的数据传送指令中,错误的操作是(4)。

①MOVSS:

[BX+DI],1000H②MOVDX,1000H

③MOVWORDPTR[BX],1000H④MOVDS,2000H

8.实现将DX:

AX中存放的32位数扩大四倍,正确的程序段是(3)。

①SHLAX,2②RCLAX,2

ROLDX,2SHLDX,2

③MOVCX,2④SHLAX,1

LOP:

SHLAX,1SHLAX,1

RCLDX,1RCLDX,1

LOOPLOPRCLDX,1

9.DATASEGMENT

TA1DW0102H,0304H,0506H

TA2DB02H,03H,04H

:

MOVBX,DS:

[0004H]

ANDBX,0FFH

MOVBH,[BX]

上述指令序列运行后,BX的内容是(3)。

①0605H②0406H

③0206H④0204H

10.下面指令序列测试BH中的数是否为奇数,若为奇数则转移至K1处,横线处的指令应为

(1)。

TESTBH,01H

_________K1

①JNE②JZ

③JS④JC

 

三、简答题:

(每小题5分,共20分)

1.在某子程序的开始处要保护AX,BX,CX,DX四个寄存器信息,在子程序结束时要恢复这四个寄存器信息。

例如:

PUSHAX;

保护现场

PUSHBX

PUSHCX

PUSHDX

恢复现场

试写出恢复现场时的指令序列。

POPDX

POPCX

POPBX

POPAX

2.宏指令STORE定义如下:

multiplyMACROopr1,opr2,result

pushdx

pushax

movax,opr1

imulopr2

movresult,ax

popax

popdx

ENDM

试展开下列调用:

multiplycx,var,xyz[bx]

1PUSHDX

1PUSHAX

1MOVAX,CX

1IMULVAR

1MOVXYZ[BX],AX

1POPAX

1POPDX

3.D2EQUTHISWORD

D1DB20HDUP(?

请写出用一条指令实现取D1的偏移地址到SI中的三种方法。

(1)LEASI,D1

(2)MOVSI,OFFSETD1

(3)LEASI,D2

4.对于下面的数据定义,各条MOV指令单独执行后,有关寄存器的内容是什么?

Datasegment

FLDBDB?

TABLEADW20DUP(?

TABLEBDB'

ABCD'

Dataends

(1)MOVAX,TYPEFLDB

(2)MOVAX,TYPETABLEA

(3)MOVCX,LENGTHTABLEA

(4)MOVDX,SIZETABLEA

(5)MOVCX,LENGTHTABLEB

(1)AX=1

(2)AX=2

(3)CX=20

(4)DX=40

(5)CX=1

四、改错题:

(每小题2分,共10分)

假设VAR为字变量,LAB为标号,试指出下列指令的错误之处并改正:

(1)SUBAL,VAR

源操作数与目的操作数长度不同

AL->

AX

(2)MOV[BX],[SI]

两个内存单元之间不能直接传数据

[BX]->

BX

(3)MOVAX,[SI][DI]

不能两个变址连用

[SI]->

(4)MOVCS,AX

不能对CS赋值

CS->

(5)POPDH

入栈必须为字DH->

DX

汇编模拟题2

一、填空题(每空2分,共40分)

1.8086的数据总线为__16__位,8086的地址总线为__20__位。

2.Movax,[bx]指令中源操作数是____寄存器间接____寻址方式。

3.MOVAX,[BP+SI]指令中源操作数是对堆栈段的____基址变址____寻址方式。

4.INCCX指令不影响__CF__标志位

5.DIVCX指令执行前,需要执行一条__CDW______指令,用于符号扩展。

6.输入/输出的控制方式共有三种,分别是_____DMA______________、___中断______、________程序控制I/O___________。

7.设CF=1,AX=1001H,执行RCLAL,1后,AX=__1003________,CF=____0_____。

8.设SS=5678H,SP=100H,执行POPAX后,则SP的值变为____0102H________,栈顶的物理地址为_____56882H_______。

9.设CS=2000H,IP=100H,SP=240H,BX=120H,执行JMPBX指令后,CS为__2000H______,IP为___120H_____,SP为___238H____。

10.设BX=0400H,SI=003CH,执行LEAAX,[BX+SI+0F62H]指令后,AX为____139EH____,BX为____0400H____。

11.LESDI,[BX]指令是将[BX]所指向内存单元低字的内容送到寄存器___DI_____,将[BX]所指向内存单元高字的内容送到寄存器___ES_____。

二、简答题(每小题5分,共20分)

1.解释下列指令序列完成的功能:

ADDAX,CX

ADCDX,BX

(1)(AX)<

-(AX)+(CX)

(2)(DX)<

-(DX)+(BX)+CF

2.有数据段定义如下:

DATAXSEGMENT

T1DW2DUP(?

T2DW2DUP(?

DATAXENDS

问:

执行MOVAX,T2后,AX=?

AX=0

3、ARY 

DW 

DUP(?

MOV 

AL,TYPE 

ARY

BL,LENGTH 

CL,SIZE 

上述MOV指令序列执行后AL,BL,CL的结果是什么?

AL=2

BL=2

CL=4

4、设寄存器AL,BL,CL中内容均为0F0H,

XOR 

AL,0FH

AND 

BL,0FH

OR 

CL,0FH

执行上述指令序列后,AL,BL,CL的结果是什么?

AL=0FFH

BL=000H

CL=0FFH

三、此程序把BX寄存器的二进制数用十六进制数在屏幕上显示出来。

阅读程序并在指定位置填入一条指令,使程序完整。

(每空5分,共20分)

Programsegment

__ASSUMECS:

Program______________________

Start:

movbx,468ah

movch,4

rotate:

movcl,4

rolbx,c1

mova1,b1

_ANDAL,0FH_______________

adda1,30h

cmpa1,3ah

jlprint

addal,7h

Print:

movdl,al

_MOVAH,02H_______________

int21h

decch

jnzrotate

__MOVAH,4EH______________

int21h

Programends

endstart

四、如下是一个二进制转换成十进制ASCII码并显示的程序,阅读程序并在指定位置填入一条指令,使程序完整。

DATASEGMENT

COMDW10000,1000,100,10,1

NDADW5456H

BUFDW7DUP(?

DATAENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA

START:

_______MOVAX,DATA_________

MOVDS,AX

MOVAX,NDA

______CMPAX,00H__________

JNSPLUS

NEGAX

MOVBUF,”-“

JMPCVD

PLUS:

MOVBUF,”+“

CVD:

MOVCX,5

MOVSI,1

Movdi,0

_____XORDX,DX___________

CVS:

CWD

Movbx,com[di]

Divbx

Adda1,30h

MOVBUF[SI],AL

INCSI

MOVAX,DX

_____LOOPCVS___________

loopcvs

MOVBUF[SI],”$”

LEADX,BUF

__MOVAH,09H______________

INT21H

MOVAH,4CH

CODEENDS

ENDSTART

汇编模拟题3

一、填空(每小题2分,共10分)

1、设SS=2000H,SP=10H,AX=BX=1234H,顺序执行PUSHAX,PUSHBX后,SP=___0CH____,AX=___1234H____,BX=___1234H____。

2.在串操作指令CMPSB执行时,用于目的地址的寄存器是_____SI_________;

如果DF=1,则该指令全执行后,目的地址寄存器__-1。

3.MOVAX,[1234H]指令中的源操作数的寻址方式为____直接寻址方式__________,这是因为在指令中使用了操作数的___有效地址____。

4.在DEBUG下,可用于执行指令或程序的命令(单字符表示)分别是__-g_____,___-t____,___-p____。

5.根据外部设备的特点,CPU对输入/输出的控制会采用不同的三种方式,这就是______程序控制I/O方式________,_____中断方式_________,_______DMA方式_______。

二、单项选择题(每小题2分,共20分)

1.十六进制数88H,可表示成下面几种形式,请找出错误的表示(4)。

2.指令指针寄存器是

(1)。

①IP②SP

①表示结果中含1的个数为偶数②表示结果中含1的个数为奇数

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

POPBXMOVAX,BX

6.在汇编语言程序中,对END语句的叙述正确的是(3)。

7.下面的数据传送指令中,错误的操作是(4)。

③MOVWORDPTR[BX],1000H④MOVDS,2000H

AX中存放的32位数扩大四倍,正确的程序段是(3)。

SHLAX,1SHLAX,1

RCLDX,1RCLDX,1

LOOPLOPRCLDX,1

③0206H④0204H

10.下面指令序列测试BH中的数是否为奇数,若为奇数则转移至K1处,横线处的指令应为

(1)。

三、简答题(每小题6分,共18分)

POPDX

2.完成下列操作,写程序段:

(1)将AX的内容,减去0520H,和上次运算的借位;

(2)将变量名TABL的段地址送AX;

(1)MOVBX,0520H

SBBAX,BX

(2)MOVAX,SEGTABL

请写出用一条指令实现取D1的偏移地址=>

SI中的三种方法。

(2)LEASI,D2

(3)MOVSI,OFFSETD1

四、程序分析题(每小题6分,共24分)

1.分析下面程序段

MOVAL,200

SARAL,1

MOVBL,AL

MOVCL,2

SARAL,CL

ADDAL,BL

试问程序段执行后(BL)=_0E4H___(AL)=_0DDH___

2.程序段如下:

BLK1DB46,84,34,-5,20,122,73

MOVCX,7

LEASI,BLK1

NEXT:

MOVAL,[SI]

INCSI

TESTAL,81H

LOOPZNEXT

MOVBL,[SI]

请回答程序段运行后:

(AL)=__-5或0FBH__(BL)=_20或14H___

3.STRINGDB‘ABCDEFGHIJ'

MOVAH,01;

从键盘输入字符1~9

ANDAL,0FH

DECAL

XORAH,AH

MOVBX,OFFSETSTRING

ADDBX,AX

MOVDL,[BX]

MOVAH,02H;

显示输出

试回答:

(1)上述程序段的功能是什么?

(2)如从键盘输入字符‘4'

,程序段有什么结果?

(1)确定在显示器上显示STRING中第几个字符。

(2)D

4.ANDAL,AL

JZBRCH1

RCRAL,1

JZBRCH2

RCLAL,1

INCAL

JZBRCH3

上述程序运行后,试回答:

(1)当(AL)=__0__时,程序转向BRCH1

(2)当(AL)=__1__时,程序转向BRCH2

(3)当(AL)=__-1__时,程序转向BRCH3

五、程序填空题(下列各小题中,一个空只能填一条指令。

每小题6分,共12分)

1.设AX,BX中的数一个为正数,一个为负数,下面程序段完成将正数送到PLW单元中存放,请将程序中所缺指令语句补上。

TESTAX,8000H

_______JEK1或JZK1________________________

MOVPLW,BX

JMPDONE

K1:

_______MOVPLW,AX________________________

DONE:

2.现有下列数据段:

STR1DB‘ABCDEFGHIJKL'

COUNTEQU$-STR1

BUFDBCOUNTDUP(0)

DATAENDS

下面程序段是实现把STR1中所有字符逆向传送到BUF缓冲区(即STR1中第一个字符送到BUF的最后一个单元,STR1中最后一字符送到BUF的第一个单元)。

试把程序中所空缺的指令填上。

MOVSI,OFFSETBUF-1

MOVDI,OFFSETBUF

MOVCX,COUNT

___CLD或STD____________________________

LOP:

MOVSB

_______SUBSI,2或ADDDI,2________________________

LOOPLOP

六、编制程序题(16分)

编写子程序SearchWord,完成的功能如下:

在目的字符串中查找源字符串。

给定的条件如下:

(1)源串的首地址为DS:

DI,作为入口条件已设置好;

(2)目的串的首地址为DS:

SI,作为入口条件已设置好;

(3)源串的长度为2,目的串以00H结尾。

返回值为:

未找到,AX=FFFFH;

已找到,AX=目的串中首次出现源串的地址。

汇编模拟题4

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

每小题1分,共20分)

1、设DS=8225H,DI=3942H,指令NEG 

BYTE 

PTR[DI]操作数的物理地址是( 

A、85B92H

B、86192H

C、BB690H

D、12169H

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

A、AX,BX,CX,DX

B、BX,BP,SI,DI

C、SP,IP,BP,DX

D、CS,DS,ES,SS

3、循环指令LOOPNZ终止循环的条件是( 

)。

A、CX=0,且ZF=0

B、CX=0,或ZF=1

C、CX10,且ZF=0

D、CX10,或ZF=1

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

A、SHR 

AX,1 

SHR 

AX,1

B、SHL 

SHL,AX,1

C、ROL 

ROL 

D、RCR 

RCR 

5、执行INC指令除对SF、ZF有影响外,还要影响的标志位是( 

A、OF,AF,PF

B、OF,AF,CF

C、OF,PF,CF

D、AF,PF,CF

6、设DH=10H,执行NEG 

DH指令后,正确的结果是( 

A、DH=10H 

CF=1

B、DH=0F0H 

CF=0

C、DH=10H 

D、DH=0F0H 

7、下列传送指令中有语法错误的是( 

A、MOV 

CS,AX

B、MOV 

DS,AX

C、MOV 

SS,AX

D、MOV 

ES,AX

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

A、TEST 

AL,02H

B、OR 

AL,AL

C、CMP 

AL,BL

D、AND 

9、执行除法指令后,影响的标志位是( 

A、CF,OF

B、SF,ZF

C、CF,OF,SF

D、AF,CF,OF,PF,SF,ZF都不确定

1

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

当前位置:首页 > 医药卫生 > 基础医学

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

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