发新话题
打印

05年1月自学考试汇编语言程序设计试题

05年1月自学考试汇编语言程序设计试题

全国2005年1月高等教育自学考试
汇编语言程序设计试题
课程代码:02321
一、单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。每小题1分,共16分)
1.已知某操作数的物理地址是2117AH,则它的段地址和偏移地址可能是(    )。 A.2025∶0F2A                                B.2108∶00EA
C.2000∶017A                                D.2100∶117A
2.某程序装入内存后,DS=1200H,CS=1400H,则程序中数据段中的数据最多是(    )字节。
A.2K                                                B.4K
C.8K                                                D.16K
3.以寄存器DI间接寻址的存储器字节单元内容加1的指令是(    )。
A.INC  [DI]                                B.INC  DI
C.INC  BYTE PTR[DI]                D.ADD [DI],1
4.有语句:COUNT  EQU  256,下列四种叙述中,正确的是(    )。
A.COUNT是变量                                B.COUNT占用一个字节存储单元
C.COUNT是符号常数                        D.COUNT占用二个字节存储单元
5.下面指令中,源操作数的寻址方式为立即寻址的是(    )。
A.MOV  AX,OFFSET A                        B.MOV  AX,A
C.MOV  AX,A+1                                D.MOV  AX,A[BX]
6.已知SP=2110H,执行POP  AX后,SP寄存器的值是(    )。
A.2111H                                                B.2112H
C.210FH                                                D.210EH
7.将AX中有符号数除以2的正确指令是(    )。
A.SHR AX,1                                B.SAR AX,1
C.ROR AX,1                                D.RCR AX,1
8.比较BX和SI中的两个存储器地址,若BX≥SI转向HIGH的正确指令是(    )。
A.JAE HIGH                                B.JBE HIGH
C.JEG HIGH                                D.JLE HIGH
9.指令SCASB操作数的段地址一定在(    )寄存器中。
A.CS                                                B.DS
C.ES                                                D.SS
10.有数据定义语句BUF DW 0ABH,1,10 DUP(3 DUP(1,0),2)汇编后,为变量BUF分配的存储单元字节数是(    )。
A.48H                                                B.90H
C.120                                                D.60


11.下列指令执行后,不改变AL寄存器内容的指令是(    )。
A.AND AL,1                                B.CMP AL,DL
C.XOR AL,AL                                D.SUB AL,DL
12.执行1号DOS系统功能调用,从键盘输入的字符值存放在(    )寄存器中。
A.AL                                                B.BL
C.CL                                                D.DL
13.执行下面指令语句,则AX=(    )。
MOV  AL,95H
CBW
A.0095H                                                B.0F95H
C.0FF95H                                        D.9095H
14.将DX,AX中32位数左移一位的指令序列是(    )。
A.SHL  AX,1                                B. RCL  AX,1
RCL  DX,1                                    SHL  DX,1
C.SHL  AX,1                                D.RCL  AX,1
SHL  DX,1                                    RCL  DX,1
15.将CX寄存器低4位清零的正确指令是(    )。
A.AND  CX,0F0H                        B.AND  CX,0FFF0H
C.AND  CX,1110H                        D.MOV  CX,0
16.判断AX和BX是否同时为偶数或同时为奇数。若是转YES的正确指令序列是(    )。
A.OR  AX,BX                                B.XOR  AX,BX
  AND  AX,1                           AND  AX,1  
  JE  YES                                       JE  YES  
C.CMP  AX,BX                                D.SUB  AX,BX
AND  AX,1                    AND  AX,1
JE  YES                                        JE  YES
二、填空题(每空1分,共16分)
1.在8086/8088系统中,存储器物理地址是分段组织的。堆栈段的段地址存放在_____寄存器中,栈顶数据的偏移地址放在_____寄存器中。代码段的段地址存放在_____寄存器中。偏移地址在_____寄存器中。
2.已知DS=29A0H,某数据的物理地址是2A400H,则当DS=6700H时,该数据的物理地址是_____。
3.逻辑运算指令都是按_____操作的,其中_____指令执行后不影响任何标志位,其他指令执行后,标志位_____和_____一定是0。
4.有指令MOV  CL,N,要使该指令合法,则N的最大值是_____,最小值是_____。(用十进制数表示)
5.已知DS=4000H,BX=0100H,SI=0004,(40100H)=28H,(40101H)=69H,(40104H)=10H,
(40105H)=9AH,先执行MOV  AX,[0100H],AX=_____再执行ADD  AX,[BX+SI],AX=_____,CF=_____。
6.有下列数据定义:
AA  DW 1,2,3,4,5,6,7
COUNT  EQU  ($-AA)/2
则COUNT=_____,表示_____。
三、简答题(每小题4分,共12分)
1.简述DOS系统功能调用方法,写出在屏幕上显示数字9的指令语句。
2.定义数据段DATA_SEG,数据段中的数据按下列要求依次存储:
(1)第一个字节是整数5
(2)变量BUF,大小为25个字节,初值为0
(3)变量ARRAY,类型为字,初值为12H,56H,78H,0AH
(4)变量MSG存储字符串’yes’
3.假设DS=2000H,BX=0100H,(20100H)=30H,(20101H)=10H
问:(1)执行MOV  DX,[BX]  DX=_____
执行LEA  DX,[BX]   DX=_____
(2)简述两条指令区别
四、程序分析题(每小题6分,共24分)
1.设寄存器AX,BX,CX中的内容都是1234H,变量value中的内容为0F0FH,执行下列指令序列:
OR  AX,value
AND  BX,value
XOR  CX,value
则AX=_____,BX=_____,CX=_____ 2.MOV  AL,5
ADD  AL,AL
MOV  BL,AL
ADD  AL,AL
ADD  AL,BL
上述程序段执行后,AL=_____,BL=_____ 程序段的功能用数学表达式表示_____
3.NUM  DB?
MOV  AH,1
INT  21H
CMP  AL,39H
JBE  NEXT
SUB  AL,7
NEXT:SUB  AL,30H
MOV  NUM,AL
上述程序段运行后,若输入’F’,则(NUM)=_____(用二进制表示)
若’8’,则(NUM)=_____(用二进制表示)
该程序段的功能是_____。
4.有下列数据定义
VA  DB  0FFH
VB  DB  1,2
VC  DW  3456H
执行下列指令序列:
MOV  AX,WORD PTR VB+1
MOV  BL,BYTE PTR VC+1
MOV  CL,VB-1
则AX=_____,BL=_____,CL=_____ 五、程序填空(每小题6分,共12分,每空格只能填一条指令)
1.下面是一个用地址表法实现多分支的程序段。根据键盘输入0~4的不同值,实现程序分支。请将程序段填写完整。
BRANCH_TAB  DW  R0,R1,R2,R3,R4



MOV  BX,OFFSET BRANCH_TAB
MOV  AH,1
INT  21H
_____
MOV  AH,0
ADD  AX,AX
ADD  BX,AX
_____;转到相应分支
2.设DX,AX中存放双字有符号数P,DX存放高位字。BX,CX中存放双字有符号数Q,BX存放高位字。下列程序完成P与Q比较大小操作。
当P≥Q时,使AX=1
  P<Q时,使AX=2
将程序填写完整:
    CMP  DX,BX
    JL    L2
    _____
    CMP  AX,CX
    _____
  L1:MOV  AX,1
JMP  EXIT
  L2:MOV  AX,2
EXIT:
六、程序设计题(第1小题6分,第2小题14分,共20分)
1.按下列要求编写一个子程序:
子程序名:ABSOLT
功能:求两数和的绝对值
输入参数:AX存放一个加数
BX存放另一个加数
输出参数:AX存放和的绝对值
2.已知在以ARRAY为首地址的数据区中存放10个带符号字数据:
ARRAY DW,1,2,-1,3,4,-2,-3,4,5,-6
编程将ARRAY分成两个数组:正数数组P_ARY和负数数组N_ARY,并分别显示正数项个数和负数项个数。
要求:源程序格式完整。
www.whkaoshi.com武汉考试网,考试人的信息资料共享的大本营!

TOP

发新话题
添加马甲

请在下面输入您的马甲帐号信息, 然后点击 "添加" 按钮. 马甲信息添加后不能修改, 如果您修改了马甲的密码或安全提问, 请删除这个马甲并重新添加.
注意,每添加一个马甲收取工本费 200 K币

用户名
密码
 
安全提问
回答
 
附加设置