东南大学微机原理与接口技术期终考试复习资料汇总情况.docx

上传人:b****2 文档编号:1306692 上传时间:2022-10-20 格式:DOCX 页数:14 大小:18.17KB
下载 相关 举报
东南大学微机原理与接口技术期终考试复习资料汇总情况.docx_第1页
第1页 / 共14页
东南大学微机原理与接口技术期终考试复习资料汇总情况.docx_第2页
第2页 / 共14页
东南大学微机原理与接口技术期终考试复习资料汇总情况.docx_第3页
第3页 / 共14页
东南大学微机原理与接口技术期终考试复习资料汇总情况.docx_第4页
第4页 / 共14页
东南大学微机原理与接口技术期终考试复习资料汇总情况.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

东南大学微机原理与接口技术期终考试复习资料汇总情况.docx

《东南大学微机原理与接口技术期终考试复习资料汇总情况.docx》由会员分享,可在线阅读,更多相关《东南大学微机原理与接口技术期终考试复习资料汇总情况.docx(14页珍藏版)》请在冰豆网上搜索。

东南大学微机原理与接口技术期终考试复习资料汇总情况.docx

东南大学微机原理与接口技术期终考试复习资料汇总情况

1.设置CX=0,则LOOP指令将执行多少次?

例如:

movcx,0

delay:

loopdelay

A.0B.1

C.65535D.65536

正确答案是:

D

2.REPZCMPSB这条指令结束的时候,如果比较的串相等,则________。

A.SF=1B.ZF=1

C.ZF=0D.CX不为0

正确答案是:

B

3.在取指令CMPBX,100H的源操作数的时候使用的逻辑地址最可能的是________。

A.DS:

100HB.CS:

IP

C.ES:

100HD.SS:

IP

正确答案是:

B

4.在一个字符串中查找一个字符,使用REPNZSCASB指令,执行完后,如果______表示没有找到。

A.ZF=1B.CX=0且ZF=0

C.CX=0,且ZF=1D.OF=1

正确答案是:

B

5.指令RET8是FAR过程的返回语句,执行之后,SP的值会______。

A.+8B.-8

C.+10D.+12

正确答案是:

D

6.REPZ重复前缀重复的条件是________

A.CX<>0且ZF=1B.CX=0,或ZF=0

C.CX=0,且ZF=0D.CX<>0或ZF=1

正确答案是:

A

12.下面的指令,对CF会产生影响的指令是_____。

A.INCAXB.DECAX

C.NEGAXD.NOTAX

正确答案是:

C

15.JMPWORDPTR[SI]这条指令的最大跳转围是________。

A.-32768字节至+32767字节B.-128字节至+127字节

C.-32768字节至+32768字节D.-512KB至+512KB

正确答案是:

A

19.16位汇编的寻址方式中,能作为基址变址寻址方式的寄存器是_____。

A.SI,DI,SS,DSB.AX,BX,CX,DX

C.BX,SP,SI,DID.BX,BP,SI,DI

正确答案是:

D

23.如果(AL)=83H,则执行CBW之后,AX的值为_______。

A.0FF83HB.8883FH

C.8003FHD.0083FH

正确答案是:

A

25.以下的公式中,_________的结果是下一条指令的物理地址。

A.CS*16+IPB.CS*16+IP+本条指令的字节数

C.SS*16+IPD.CS*10+IP

正确答案是:

A

 

1.在存中从Table开始的10个单元中连续存放0到9的平方值,任给一个0到9的数X,该数存放在存单元XX中,查表求X的平方值,并将结果存于存YY单元中。

编写程序,并在DEBUG中进行调试和验证结果。

(提示:

考虑平方表的每一项需要什么数据类型才合适,XLAT指令是否合适?

应该如何查表?

.8086

.MODELSMALL

.DATA

ORG10H

TABLEBYTE0,1,4,9,16,25,36,49,64,81

XBYTE7

YBYTE?

.CODE

START:

MOVAX,DATA

MOVDS,AX

MOVBX,OFFSETTABLE

MOVAL,X

XLAT

MOVY,AL

ENDSTART

2.假设CX:

BX中放了4位非压缩的BCD码表示的十进制数4386,请编写完整程序将这个数转成2进制数放到DI寄存器中,并用DEBUG调试和验证之

.8086

.MODELSMALL

.DATA

.CODE

START:

MOVAX,DATA

MOVDS,AX

MOVCX,0403H

MOVBX,0806H

MOVDI,0

MOVAX,0

ADDAL,BL

ADDDI,AX

MOVAL,10

MULBH

ADDDI,AX

MOVAX,100

MULCL

ADDDI,AX

MOVAX,1000

XCHGCH,CL

ANDCX,0FH

MULCX

ADDDI,AX

ENDSTART

3.利用跳转表技术实现根据用户输入的星期几的数字代号在屏幕上显示星期几的英文名称的功能。

(提示:

1)键盘输入的是数字的ASCII码,需要转换成数字。

2)建立一跳转表,表中存放打印每个星期的程序段的入口地址。

3)考虑怎么使程序代码量最小。

.8086

.MODELSMALL

.DATA

TABLEBYTE'Monday$$$$',

'Tuesday$$$',

'Wednesday$',

'Thursday$$',

'Friday$$$$',

'Saturday$$',

'Sunday$$$$'

.CODE

START:

MOVAX,DATA

MOVDS,AX

MOVAH,01H

INT21H

CMPAL,30H

JBEEXIT

CMPAL,38H

JAEEXIT

ANDAX,0FH

SUBAL,30H

DECAL

MOVCL,10

MULCL

LEADX,TABLE

ADDDX,AX

MOVAH,9

INT21H

EXIT:

MOVAH,4CH

INT21H

ENDSTART

4.已知数据段有以下定义:

NUMDW3570

STRINGDB5DUP(20H),’$’;20H为空格的ASCII码

请编写完整程序,在屏幕上以十进制的形式将NUM这个数打印出来,可以借助STRING这个字符串。

(NUM这个数可以定义为一个任意字型数)。

.8086

.MODELSMALL

.DATA

ORG100H

NUMWORD3570

STRINGBYTE4DUP(20H),'$'

.CODE

START:

MOVAX,DATA

MOVDS,AX

LEADI,STRING

MOVAX,NUM

MOVCX,4

;每次循环除以10,将商作为下次的被除数,余数即为对应的十进制数字

DECDI

LP:

PUSHCX

CWD

MOVCX,10

DIVCX

POPCX

MOVBX,CX

ADDDL,30H;转化为对应的ASCII码

MOV[BX][DI],DL

LOOPLP

MOVAH,09H;输出字符串,以‘$’结尾

LEADX,STRING

INT21H

MOVAH,4CH;退出程序

INT21H

ENDSTART

5.统计以‘$’字符结束的字符串string的字符个数。

.8086

.MODELSMALL

.DATA

ORG100H

STRINGBYTE'HELLO,WORLD!

!

!

','MYNAMEISASM','$'

LENBYTE?

STRBYTE3DUP(20),'$'

.CODE

START:

MOVAX,DATA

MOVDS,AX

LEADI,STRING

MOVLEN,0

MOVBL,'$'

CP:

CMPBL,[DI];bl中的值是否为'$',若是则调到continue,若不是则继续比较,相应的值加1

JZCONTINUE

INCLEN

INCDI

JMPCP

CONTINUE:

MOVAL,LEN

LEASI,STR

MOVCX,3

DECSI

LP:

PUSHCX

CBW

MOVCL,10

DIVCL

POPCX

MOVBX,CX

ADDAH,30H

MOV[BX][SI],AH

ANDAX,0FFH

LOOPLP

MOVAH,09H

LEADX,STR

INT21H

MOVAH,4CH

INT21H

ENDSTART

6.十进制到二进制数转换。

从键盘取得一个十进制数,将其以二进数形式显示出来。

要求定义回车换行子程序、从键盘获得十进制数(0~128之间),并存放在BL中的子程序,用二进制显示BL中数据的子程序。

.8086

.MODELSMALL

.DATA

.CODE

START:

MOVAX,DATA

MOVDS,AX

MAINPROCFAR

CALLSHURU

CALLCRLF

CALLPRT

CALLCRLF

MOVAH,4CH

INT21H

MAINENDP

SHURUPROCNEAR;出口参数BL

PUSHAX;保护现场

PUSHCX

MOVBL,0

NEWCHAR:

MOVAH,1

INT21H;将键盘输入的字符的ASCII码传给AL寄存器

SUBAL,30H

JLEXIT;小于0转

CMPAL,9

JGEXIT;大于9转

XCHGAL,BL

MOVCL,10

MULCL;将以前的值乘以10

XCHGAL,BL

ADDBL,AL;加这一次读的值

JMPNEWCHAR

EXIT:

POPCX

POPAX

RET

SHURUENDP

CRLFPROCNEAR

PUSHAX

PUSHDX

MOVDL,0DH;回车

MOVAH,2

INT21H

MOVDL,0AH;换行

MOVAH,2

INT21H

POPDX

POPAX

RET

CRLFENDP

PRTPROCNEAR;入口参数BL

PUSHAX

PUSHCX

PUSHDX

MOVCX,8

LP:

ROLBL,1;循环左移,将二进制最高位挪到末尾

MOVBH,BL

ANDBL,01H;只保留最后一位,即二进制的第一位

ADDBL,30H;转化为0或1的ASCII码

MOVDL,BL;调用DOS的输出字符功能

MOVAH,02H

INT21H

MOVBL,BH

LOOPLP

POPDX

POPCX

POPSI

RET

PRTENDP

ENDSTART

7.利用递归程序,计算N!

具体要求:

用键盘输入一个数N(1~6之间),利用一个递归过程FAC来计算N!

(N放在AL中,结果在DX中),然后将计算的结果以十进制形式打印到屏幕上。

.8086

.MODELSMALL

.DATA

RESULTWORD?

STRINGBYTE5DUP(?

),'$'

.CODE

START:

MOVAX,DATA

MOVDS,AX

MAINPROCFAR

CALLSHURU

CAL

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

当前位置:首页 > 幼儿教育 > 幼儿读物

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

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