汇编语言程序设计试题

更新时间:2023-10-06 12:42:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

汇编语言程序设计试题1

1.对于有符号的数来说,下列哪个值最大( ) A:0F8H B:11010011B C:82

D:123Q

2.下列有关汇编语言中标号的命名规则中,错误的是( )

A:通常由字母打头的字符、数字串组成 B:标号长度不能超过31个字符 C:?和$不能单独作为标号 D: .号不可位于标号首 3.8088/8086存储器分段,每个段不超过( )

A.64K个字 B.32K个字节 C.1兆个字节 D.64K个字节 4.寻址指令MOV CX, [BX + DI + 20]使用的是哪一种寻址方式( ) A:寄存器寻址 B:相对基址变址寻址 C:变址寻址 D:基址变址寻址 5.若AX= - 15要得到AX=15应执行的指令是( ) A.NEG AX B.NOT AX C.INC AX D.DEC AX 6.8086/8088系统执行传送指令MOV时( )

A.不影响标志位 B.影响DF方向标志 C.影响SF符号标志

D.影响CF进位标志

7.若要求一个操作数中的若干位维持不变,若干位置“1”,可以使用( ) A:NOT

B:OR

C:AND

D:XOR

8.下列指令中段默认为堆栈段的是( )

A.MOV AX,[BX+SI+10] B.ADD AX,ES:[SI] C.SUB [BX],[BP][DI] D. MOV DX,[1000H]

9.关于8086/8088微机系列,下列说法哪个是正确的( ) A:一个存储单元由16个二进制位组成,简称字。

B:当存储一个字数据时,低字节放高地址位,高字节放低地址位。 C:在内存空间中,可以无限分配段,且段的大小不受限制。 D:段与段之间可以邻接,也可以重叠。 10.下列关于堆栈的说法,错误的是( )

A:以“先入后出”为原则。 B:栈区最高地址单元的前一个单元为栈底。 C:运行中SP寄存器动态跟踪栈顶位置。 D:压栈和弹出都是以字节为单位。 11.表示过程定义结束的伪指令是( )

A.ENDP B.ENDS C.END D.ENDM 12.BUF1 DB 3 DUP(0,2 DUP (1,2),3)

COUNT EQU $-BUF1 符号COUNT等价的值是( )

1

A.6 B.18 C.16 D.9

13.下列标志位中,可以用来判断计算结果正负的是( ) A:PF B:SF

C:DF

D:OF

14.下列指令正确的是( )

A. MOV [100H], [BX] B.MOV DS, ES C. ADD V[BX], CX D.MOV AX, 34H 15.下列哪个寄存器是属于指针寄存器( ) A:SI

B:DX

C:SP

D:ES

二、填空题

1. 下列程序段求数组FLD的平均值,结果在AL中。请将程序填写完整(不考虑溢出)

FLD DW 10, -20, 30, -60, -71, 80, 79, 56 MOV CX, 8 XOR AX, AX

R1: ADD SI, 2 LOOP R1 MOV CL, 8 IDIV CL HLT

2.MOV AX, 1090H SUB AX, 4AE0H JC L1 JO L2 JMP L3

上述程序执行后AX=_ _,程序转向_ 3.假设寄存器AX=1234H,DX=0A000H MOV BX, 0 MOV CX, BX SUB CX, AX SBB BX, DX MOV AX, CX

2

MOV DX, BX

上述程序段执行后AX=_ _ ____ ,DX=_ _____ 4.MOV AX, 234H MOV CL, 3 ROL AX, CL DEC AX MOV CX, 4 MUL CX

此段程序执行完后,(AX)= _______ , (CX)= _______ 5.DA1 DB 83H,72H,61H,94H,5AH ┇

MOV CX,WORD PTR [DA1] AND CX,0FH MOV AL,[DA1+3] SHL AL,CL

上述指令序列执行后,AL=__ ____,CL=____ __。 三、简答题

1.如TABLE为数据段中0100单元的符号名,其中存放的内容为0FF00H,试问以下两条指令有什么区别?指令执行后,AX寄存器的内容是什么? MOV AX,TABLE MOV AX,OFFSET TABLE 2.对于下面的数据定义

TAB1 DW 10 DUP(?) TAB2 DB 10 DUP(?) TAB3 DB ‘1234’ ┇

MOV AX,SIZE TAB1 MOV BL,SIZE TAB2 MOV CL,SIZE TAB3 三个寄存器中值分别为多少?

3

汇编语言程序设计试题2

一.名词解释 1. 逻辑地址 2. 物理地址 3. 标志寄存器 4. 存储器寻址方式: 5. 补码:

二.计算题(试按照各小题的要求给出计算结果)。

1.将十进制数100分别转换为二进制、十六进制数,它们的表示形式分别为多少?

2.假设(DS)=0B00H,(BX)=0210H,对于指令MOV DS:120H[BX],AL,其目的操作数的物理地址为多少? 3.假设(BX)=0210H,(DI)=0060H,对于指令ADD DL,[BX][DI],其源操作数的偏移量为多少? 4.假设当前(SP)=0060H,连续执行5条PUSH指令后,(SP)=? 5.对于一个十进制数 – 65,其二进制补码表示形式为多少?

三.排错题(每小题列出了一条指令,判断该指令有无语法错误,如果存在语法错误,请指出具体的错误原因)。 1. PUSH 5588H

2. MOV DS, 1720H 3. ADD AX, CL 4. AND AX,[DX]

四.程序分析题(每小题列出了一段小的程序片段和相关存储单元的初始值,请按题目的要求分析各程序片段的运行结果。(寄存器中的内容请使用十六进制形式给出)) 1. 阅读如下程序片段 MOV AL,4CH MOV BL,0B5H ADD AL,BL

执行上述程序片段后,(AL)=( ) ,(BL)= ( ),CF=( ) ,OF= ( ) ,PF= ( ) 2.阅读如下程序片段 MOV AL,0F3H MOV DL,0C4H ADD AL,DL AND AL,0FH

4

执行上述程序片段后,(AL)= ,(AF)= ,CF= ,OF= ,PF= 3.阅读如下程序片段 MOV AL,7EH MOV CL,04H ROL AL,CL

执行上述程序片段后,(AL)= ,(CL)= ,CF= ,OF= 4.阅读如下程序片段 MOV AX,0632H MOV BX,0C202H SUB AX,BX INC AX

执行上述程序片段后,(AX)= ,(CF)= ,OF= 5.阅读如下程序片段,假设(DS)=0100H,字节单元(01024H)=56H,字节单元(01025H)=28H MOV BX,0024H LEA BX,[BX] OR BX,0 ADC BX,[BX]

执行上述程序片段后,(BX)= ,(CF)= ,OF= 6.阅读如下程序片段,假设(SP)=0064H MOV AX,0001H MOV BX,0002H PUSH AX PUSH BX POP AX POP BX

执行上述程序片段后,(AX)= ,(BX)= ,(SP)= 五.程序设计题(本大题共2小题,第一小题7分,第二小题8分,共15分) 1. 试编写一程序片段,实现BL高4位与低4位相互交换(7分)

2. 试编写一程序片段,不使用乘除法指令,实现((AX)*5+14)/ 2的功能(AX中的数据理解为补码)(8分)

5

本文来源:https://www.bwwdw.com/article/sggd.html

Top