在线作业答案 发表于 2020-12-26 20:50:46

《汇编语言》考前练兵

《汇编语言》考前练兵
1.[单选题] 在微机汉字系统中,一个汉字的机内码占(          )字节。
更多学习资料www.openhelp100.com
    A.1
    B.2
    C.3
    D.4
    答:——B——
2.[单选题] 十进制33.25转换成十六进制数为(          )。
    A.B1.4H
    B.1
    C.19H
    D.21.4H
    E.33.4H
    答:——C——
3.[单选题] 表示源程序结束的伪操作的格式是(          )。
    A.ENDS
    B.END[LABEL]
    C.ENDS
    D.END
    答:——B——
4.[单选题] 下列指令中操作数在代码段中的是(          )。
    A.MOV AX,25H
    B.INC DS:
    C.CMP AL,BL
    D.ADD AH,BL
    答:————
5.[单选题] 下列指令正确的是(          )。
    A.MOV CX, AL
    B.MOV DS, 200h
    C.MOV DS, CS
    D.MOV DS, AX
    答:————
6.[单选题] JMP FAR PTR XXXX(XXXX是符号地址)是(          )。
    A.寄存器寻址
    B.寄存器间接寻址
    C.段间直接转移寻址
    D.段内间接转移寻址
    答:————
7.[单选题] 下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是(          )。
    A.AX,BX,CX,DX
    B.BX,BP,SI,DI
    C.SP,IP,BP,DX
    D.CS,DS,ES,SS
    答:————
8.[单选题] 执行除法指令后,影响的标志位是(          )。
    A.CF,OF
    B.SF,ZF
    C.CF,OF,SF
    D.所有状态标志都不影响
    答:————
9.[单选题] 对数值7DA3H做“非”运算的结果为(          )。
    A.824CH
    B.825BH
    C.825CH
    D.825DH
    答:————
10.[单选题] 没有语法错误的输出指令是(          )。
    A.OUT AX,30H
    B.OUT DX,AL
    C.OUT AL,DX
    D.OUT 30H,AH
    答:————
11.[单选题] 在DEBUG下,a命令的作用是 (          )。
    A.反汇编
    B.汇编
    C.查看数据
    D.写入数据
    答:————
12.[单选题] 设CL=05H,要获得CL=0AH,可选用的指令是(          )。
    A.XOR CL,0FH
    B.NOT CL
    C.OR CL,0AH
    D.AND CL,0FH
    答:————
13.[单选题] 下列指令执行后能使BX中数据必为奇数的是(          )。
    A.XOR BX,01H
    B.OR BX,01H
    C.AND BX,01H
    D.TEST BX,01H
    答:————
14.[单选题] 将字符串‘HOW ARE YOU!’存入变量AYB(          )。
    A.DB “HOW ARE YOU!”
    B.AYB=“HOW ARE YOU!”
    C.AYB DB“HOW ARE YOU!”
    D.AYB DB HOW ARE YOU!
    答:————
15.[单选题] 下面有语法错误的指令是(          )。
    A.MOV AX,
    B.MOV AX,-2
    C.MOV AX,
    D.MOV AX,-1
    答:————
16.[单选题] 使用DOS功能调用时,子程序的编号应放在寄存器(          )中。
    A.AH
    B.AL
    C.AX
    D.任意指定
    答:————
17.[单选题] 8位无符号整数的表示范围为0--255,写成16进制形式为(          )。
    A.0-80H
    B.0-0FFH
    C.0-FF
    D.0-255H
    答:————
18.[单选题] 下列操作中允许段超越的是(          )。
    A.取指令
    B.存目的串
    C.以BP为基址存取操作数
    D.堆栈操作
    答:————   
19.[单选题] 执行CALL DWORD PTR 指令的含义是 (          )。
    A.调用一个位于数据段的子程序,该地址由BX间接寻址得到
    B.调用子程序的首地址保存于数据段内,该地址由BX间接寻址得到
    C.调用一个堆栈段的子程序,该地址由BX间接寻址得到
    D.调用一个代码段的子程序,该地址由BX间接寻址得到
    答:————
20.[单选题] DF=1,执行MOVSB指令后 (          )。
    A.SI减1,DI减1
    B.SI加1,DI加1,CX减1
    C.SI减1,DI减1,CX减1
    D.SI加1,DI加1,CX加1
    答:————
21.[单选题] 执行指令 MOVAL, 时,所读取的数据应在(          )。
    A.CS段中
    B.DS段中
    C.SS段中
    D.ES段中
    答:————
22.[单选题] 某微机有16条地址线,能够覆盖的地址范围是(          )。
    A.0001H-FFFFH
    B.00001H-FFFFFH
    C.0000H-FFFFH
    D.00000H-FFFFFH
    答:————
23.[单选题] 计算机存储数据的最小单位是(          )。
    A.位(比特)
    B.字节
    C.字长
    D.千字节
    答:————
24.[单选题] 定义字节的伪指令是(          )。
    A.DD
    B.DB
    C.DW
    D.DQ
    答:————
25.[单选题] 下列指令正确的是 (          )。
    A.CMP , 100
    B.CMP WORD PTR , 100
    C.CMP , 100h
    D.CMP 100h,
    答:————
26.[单选题] CPU执行算术运算指令不会影响的标志位是(          )。
    A.溢出标志
    B.符号标志
    C.零标志
    D.方向标志
    答:————
27.[单选题] JMP BX指令的寻址方式是 (          )。
    A.寄存器寻址
    B.寄存器间接寻址
    C.段内直接转移寻址
    D.段内间接转移寻址
    答:————
28.[单选题] 条件转移指令JNE的测试条件为(          )。
    A.ZF=0
    B.CF=0
    C.ZF=1
    D.CF=1
    答:————
29.[单选题] 在DEBUG下,u命令的作用是 (          )。
    A.反汇编
    B.汇编
    C.查看数据
    D.写入数据
    答:————
30.[单选题] 设DL=0AAH,执行指令后能使DL=55H的指令是(          )。
    A.TEST DL,55H
    B.OR AL ,55H
    C.NEG DL
    D.XOR DL,0FFH
    答:————
31.[单选题] Intel 8086 I/O寻址空间为 (          )。
    A.1MB
    B.1KB
    C.64KB
    D.32KB
    答:————
32.[单选题] 内中断的分类为 (          )。
    A.执行中断指令INT n,CPU出错引起的中断,为调试程序设置的中断
    B.除法出错的中断、溢出中断、单步中断、软件中断
    C.可屏蔽中断、不可屏蔽中断、中断指令INT n
    D.可屏蔽中断、不可屏蔽中断、断点中断
    答:————
33.[单选题] 与NOT AX;NEGAX指令等效的指令是(          )。
    A.DEC AX
    B.INC AX
    C.SUB AX,AX
    D.ADD AX,AX
    答:————
34.[单选题] 执行乘法指令后,影响的标志位是(          )。
    A.CF,OF
    B.SF,ZF
    C.CF,OF,SF
    D.AF,CF,OF,PF,SF,ZF都不确定
    答:————
35.[单选题] 对寄存器AX的内容乘以4的正确指令序列是(          )。
    A.SHR AX,1 /SHR AX,1
    B.SHL AX,1/ SHL,AX,1
    C.ROL AX,1 /ROL AX,1
    D.RCR AX,1/ RCR AX,1
    答:————
36.[单选题] 与MOV BX,OFFSET VAR指令完全等效的指令是(          )。
    A.MOV BX,VAR
    B.LDS BX,VAR
    C.LES BX,VA R
    D.LEA BX,VAR
    答:————
37.[单选题] 执行下面指令序列后,MOV AL,82H/CBW,结果是(          )。
    A.AX=0FF82H
    B.AX=8082H
    C.AX=0082H
    D.AX=0F82H
    答:————
38.[单选题] 栈顶内容弹出送字变量AYW(          )。
    A.POP
    B.PUSH
    C.PUSH AYW
    D.POP AYW
    答:————
39.[单选题] 地址表达式AYY的偏移地址送字变量ADDR(          )。
    A.MOV ADDR,OFFSET AYY
    B.MOV ADDR, AYY
    C.OFFSET AYY
    D.LEA OFFSET AYY
    答:————
40.[单选题] 把汇编语言翻译成机器语言的过程称为(          )。
    A.编译
    B.汇编
    C.编辑
    D.链接
    答:————
41.[判断题] INC CX,1 (          )
    A.对
    B.错
    答:————
42.[判断题] TEST ,BL (          )
    A.对
    B.错
    答:————
43.[判断题] MOV ,AX (          )
    A.对
    B.错
    答:————
44.[判断题] PUSH 45(          )
    A.对
    B.错
    答:————
45.[判断题] AND DH,DL (          )
    A.对
    B.错
    答:————
46.[判断题] MOV,BX(          )
    A.对
    B.错
    答:————
47.[判断题] AND,AL(          )
    A.对
    B.错
    答:————
48.[判断题] SUB,DA_BYTE(          )
    A.对
    B.错
    答:————
49.[判断题] TEST DH,DL (          )
    A.对
    B.错
    答:————
50.[判断题] SHLAX,2(          )
    A.对
    B.错
    答:————
51.<Fillup> 在寄存器间接寻址中,如果指令中指定的寄存器为BP,则操作数在##段中,段地址在SS寄存器中。
    答:————
52.<Fillup> 数据段定义如下:##
   X1   DB10H,50,1
   X2   DW10H,20,3
   X3   DD?
   COUNT   EQUX3-X1
变量COUNT的值是
    答:————
53.<Fillup> 十六进制数0FFF8H表示的十进制正数为##。
    答:————
54.<Fillup> 设AH=0,AL=06H,BL=09H,执行指令##
   ADD AL,BL            AAA
   之后,其结果应是
    答:————
55.<Fillup> PSW寄存器中共有##位条件状态位。
    答:————
56.<Fillup> 计算机系统通过???##与外围设备通信。
    答:————
57.<Fillup> 中央处理器包括运算器、控制器、##。
    答:————
58.<Fillup> 逻辑地址由段基值和?##组成。
    答:————
59.<Fillup> DB ‘AB’定义了2个字节,在内存中的16进制代码按顺序为##。
    答:————
60.<Fillup> 注释项用于说明程序段或是一条和几条指令的功能,一般用##表示注释的开始。
    答:————
61.<Fillup> 重复前缀指令REP的重复次数由????##决定。
    答:————
62.<Fillup> CPU的标志寄存器中标志位,可以分为两大类,其中一类称为##标志位,另一类称为控制标志位。
    答:————
63.<Fillup> 串指令中的目的操作数地址是由##提供。
    答:————
64.<Fillup> 主程序和所调用的子程序在同一代码段中,子程序的属性应定义为##
    答:————
65.<Fillup> 条件转移指令JNE的测试条件为##
    答:————
66.<Fillup> 用二进制代码书写指令和程序的语言,称为##
    答:————
67.<Fillup> 将逻辑地址转换为物理地址的公式是##其中的段基值是由?段寄存器?存储。
    答:————
68.<Fillup> 调用C语言函数时参数的进栈顺序是##。
    答:————
69.<Fillup> 执行“MULBL”之后,积存放在##中。
    答:————
70.<Fillup> DOS系统功能调用方式为:(1)置入口参数;(2)中断程序编号送##寄存器后执行INT??21H。
    答:————
71.<Fillup> DR1DB10H,30H,LENGTHDR2请问指令执行后,CL的值为## 。   
   DR2DW10HDUP(0,2DUP(2))
    ……
MOVBL,LENGTHDR1
MOVCL
    答:————
72.<Fillup> 当标志位##=1时表示无符号数运算产生溢出。
    答:————
73.<Fillup> 在程序执行过程中,IP寄存器中始终保存的是##。
    答:————
74.<Fillup> 循环指令LOOPNZ终止循环的条件是## 。
    答:————
75.<Fillup> 执行如下程序:
    MOV AX,0
    MOV BX,1
    MOV CX,100
    A:ADD AX,BX
    INC BX
    LOOP A
    HLT
    执行后(BX)=##
    答:————
76.<Fillup> 当指令“SUBAX,BX”执行后,CF=1,说明最高有效位 ##
    答:————
77.<Fillup> DEBUG命令中,汇编命令 ## 。
    答:————
78.<Fillup> MOV AX,3*4中的乘法是在##计算的。
    答:————
79.<Fillup> 在8086中,一个逻辑段最长为##字节。
    答:————
80.<Fillup> 数据段定义如下:##
   X1   DB10H,50,1
   X2   DW10H,20,3
   X3   DD?
   COUNT   EQUX3-X1
变量COUNT的值是
    答:————
81.<Fillup> 设AH=0,AL=06H,BL=09H,执行指令 ##
   ADD AL,BL            AAA
   之后,其结果应是
    答:————
82.<Fillup> PSW寄存器中共有##位条件状态位。
    答:————
83.<Fillup> 计算机系统通过   ##与外围设备通信。
    答:————
84.<Fillup> 中央处理器包括运算器、控制器、##。
    答:————
85.<Fillup> 逻辑地址由段基值和 ##组成。
    答:————
86.<Fillup> DB ‘AB’定义了2个字节,在内存中的16进制代码按顺序为##。
    答:————
87.<Fillup> 注释项用于说明程序段或是一条和几条指令的功能,一般用 ## 表示注释的开始。
    答:————
88.<Fillup> 重复前缀指令REP的重复次数由      ##决定。
    答:————
89.<Fillup> CPU的标志寄存器中标志位,可以分为两大类,其中一类称为##标志位,另一类称为控制标志位。
    答:————
90.<Fillup> 串指令中的目的操作数地址是由##提供。
    答:————
91.<Fillup> 主程序和所调用的子程序在同一代码段中,子程序的属性应定义为##
    答:————
92.<Fillup> 条件转移指令JNE的测试条件为##
    答:————
93.<Fillup> 用二进制代码书写指令和程序的语言,称为##
    答:————
94.<Fillup> 将逻辑地址转换为物理地址的公式是##其中的段基值是由 段寄存器 存储。
    答:————
95.<Fillup> 调用C语言函数时参数的进栈顺序是##。
    答:————
96.<Fillup> 执行“MULBL”之后,积存放在##中。
    答:————
97.<Fillup> DOS系统功能调用方式为:(1)置入口参数;(2)中断程序编号送##寄存器后执行INT21H。
    答:————
98.<Fillup> DR1DB10H,30H,LENGTHDR2请问指令执行后,CL的值为   ## 。   
   DR2DW10HDUP(0,2DUP(2))
    ……
MOVBL,LENGTHDR1
MOVCL
    答:————
99.<Fillup> 当标志位##=1时表示无符号数运算产生溢出。
    答:————
100.<Fillup> 循环指令LOOPNZ终止循环的条件是##。
    答:————
101.<Fillup> 执行如下程序:
    MOV AX,0
    MOV BX,1
    MOV CX,100
    A:ADD AX,BX
    INC BX
    LOOP A
    HLT
    执行后(BX)=##
    答:————
102.<Fillup> 当指令“SUBAX,BX”执行后,CF=1,说明最高有效位##
    答:————
103.<Fillup> DEBUG命令中,汇编命令##。
    答:————
104.<Fillup> MOV AX,3*4中的乘法是在##计算的。
    答:————
105.<Fillup> 在8086中,一个逻辑段最长为##字节。
    答:————
106.<Fillup> 加1指令是##,其指令格式是##。
    答:————
107.<Fillup> 逻辑运算指令中##指令只有一个操作数;欲把某操作数指定的一位或多位置0,需用指令(##;置1需用指令##;变反需用指令##。
    答:————
108.<Fillup> 借位减法指令是##,若在执行此指令前,CF为0,则执行此指令与不带进位的减法指令是否相同##(填写“同”或“不同”)。
    答:————
109.<Fillup> SAL是##指令;SHR是##指令;
    答:————
110.<Fillup> ADC是##指令,其格式##;ADD是##指令。
    答:————
111.<Fillup> PUSH是##指令。
    答:————
112.<Fillup> 十六进制数A2B转换为二进制数为##。
    答:————
113.<Fillup> 存储单元的逻辑地址是2B0C:2C3H,则其物理地址是##。
    答:————
114.<Fillup> CPU的四个段寄存器是##、##、##、##。
    答:————
115.<Fillup> 执行10101011+01010101运算后,CF=##,OF=##,SF=##,ZF=##。
    答:————
116.<Fillup> 出下列指令中源操作数的寻址方式:MOVDS,AX##;
ADCAX,0ABH ##;ANDBL, ##。
    答:————
117.<Fillup> 二进制数110111100101.1011转换为十六进制数为##。
    答:————
118.<Fillup> SEG运算符的功能是取得变量或标号的##;OFFSET运算符是取得变量或标号的##。
    答:————
119.<Fillup> 进行堆栈操作时,隐含使用的是堆栈指针##(写出堆栈指针的名字)
    答:————
120.<ShortAnswer> 在指令系统中,段内、段间返回均为RET指令。试回答:   
(1)执行段内返回RET指令时,执行的操作是?
(2)执行段间返回RET指令时,执行的操作是?
    答:————
121.<ShortAnswer> 现有如下程序段:
    DATA SEGMENT                            DA3 EQU 1234H
    ORG 0020H                                 DA4 EQU $-DA2
    DA1 DW 12H,23H                        DA5 DB 31H,32H
    DA2 DB 11H,21H                           DATA ENDS
    注意:程序是从左到右看,先把左边的程序段看完了再看右边的程序段。下面的程序段以相同的方法进行读解。
请回答:
(1)该程序段已占有的存储字节数是多少?
(2)符号名DA4的值是多少?符号名DA5的值是多少?
    答:————
122.<ShortAnswer> 0P1 DB 1,2
0P2 DW 3412H,5678H

MOV AX,OP1+1;字单元(OP1+1) AX
MOV BL,OP2+1;字节单元(OP2+1) BL
上述二条传送语句有语法错误,请根据注释字段的说明,将其改正。
    答:————
123.<ShortAnswer> 什么叫寻址方式?常用的寻址方式有哪些?
    答:————
124.<ShortAnswer> 简述下面两条指令分别是什么语法错误
MOV ,
MOV AX,DL
    答:————
125.<ShortAnswer> 阅读如下程序:
    ADRR DB XXH,XXH,……,XXH CMP ADRR,0
    NUM EQU $ -ADRR LOOPZ DON
    RETT DB? JNZ NEXT
    … MOV BL,OFFH
    MOV CX,NUM NEXT:MOV RETT,BL
    MOV BX,-1 HLT
    DON:INC BX
请问:(1)该程序完成的功能是什么?(2)程序执行后指出RETT字节单元中的内容是什么?
    答:————
126.<ShortAnswer> DATA SEGMENT
S9 DB0,1,2,3,4,5,6,7,8,9
DATA ENDS

LEA SI,S9
LEA,DI,S9+1
MOV CX,5
LOP: MOV AL,
XCHG AL,
MOV ,AL
ADD SI,2
ADD DI,2
LOOP LOP
上述程序段运行后,S9开始的10个字节存储单元内容是什么?
    答:————
127.<ShortAnswer> STRING DB ‘ABCDEFGHIJ'
   :
   MOV AH,01 ;从键盘输入字符1~9
   INT 21H
   AND AL,0FH
   DEC AL
   XOR AH,AH
   MOV BX,OFFSET STRING
   ADD BX,AX
   MOV BL,
   MOV AH,02H ;显示输出
   INT 21H
   :
   试回答:
(1)上述程序段的功能是什么?   
  (2)如从键盘输入字符‘4',程序段有什么结果?
    答:————
128.<ShortAnswer> 现有下列程序段:   
   MOV AX,6540H
   MOV DX,3210H
   MOV CL,04
   SHL DX,CL
   MOV BL,AH
   SHL AX,CL
   SHR BL,CL
   OR DL,BL
   试问上述程序段运行后, (AX)=             (BL)=                        (DX)=
    答:————
129.<ShortAnswer> 已知
AX=0FF60H,CF=1            
MOV DX,96
XOR DH,0FFH
SBB AX,DX
执行上述指令序列后,AX=____________________,CF=____________________。
    答:————
130.<ShortAnswer> 现有下列数据段:
   DATA SEGMENT
   STR1 DB‘ABCDEFGHIJKL'
   COUNT EQU -STR1
   BUF DB COUNT DUP(0)
   DATA ENDS
   下面程序段是实现把STR1中所有字符逆向传送到BUF缓冲区(即STR1中第一个字符送到BUF的最后一个单元,STR1中最后一字符送到BUF的第一个单元)。试把程序中所空缺的指令填上。
   MOV SI,OFFSET BUF-1
   MOV DI,OFFSET BUF
   MOV CX,COUNT
   _______________或_______________
   LOOP:MOVSB
   ________________或________________
   LOOP LOP
    答:————
131.<ShortAnswer> 试编制一程序段,用串操作指令实现以DA_BY为首址的20H个字节单元中存放相同字符‘Y’(设DA_BY存储区已有ES指向)。
    答:————
132.<ShortAnswer> 试编写一完整程序,实现88242567H与0A435C218H两个32位无符号数相加的功能。(要求编写完整源程序,含程序框架)
    答:————
133.<ShortAnswer> 下面程序段是判断寄存器AH和AL中第3位是相同,如相同,AH置0,否则AH置全1。试把空白处填上适当指令.
____ XOR AH,AL_______________
AND AH,08H
_____ JE ZERO______________
MOV AH,OFFH
JMP NEXT
ZERO:MOV AH,0
NEXT:……
    答:————
134.<ShortAnswer> DA1DB‘ABCDEFGHI’
DA2DB9 DUP(0)
    ┇
    LEA SI,DA1
    LEA DI,DA2
    MOV CX,9
    CLD
LOP: LODSB
    SUB AL,10H
    STOSB
    LOOP LOP
    . . .
试问:①写出程序执行后DA2各字节中的数据。      
   ②保持程序功能情况下,程序中 可否改写为
    答:————
135.<ShortAnswer> DA3 EQU WORD PTR DA4
DA4 DB 0ABH,89H

SHR DA3,1
MOV DX,DA3
SHL DA4,1
MOV CX,DA3
上述程序段运行后,CX=_______________,DX=_______________。
    答:————
136.<ShortAnswer> 阅读程序段:
    BLOCK DB 20H,1FH,08H,81H,OFFH… LOP1:CMP AL,
    RESULT DB? JNG NEXT
    … MOV AL,
    START:LEA SI,BLOCK NEXT:INC SI
    MOV CX, LOOP LOP1
    INC SI MOV RESULT,AL
    MOV AL, HLT
    请问:(1)该程序完成的功能是什么?(2)该程序循环的次数是多少?
    答:————
137.<ShortAnswer> 下面程序的功能是什么?
STRING DB 100 DUP(?)
         MOV AX,SEG STRING
         MOV DS,AX
         LEA SI,STRING
         MOV CX,100
LAB: MOV AL,
          CMP AL,’a’
          JBLAB1
          CMP AL,’z’
          JALAB1
          SUB AL,32
          MOV ,A
LAB1: INC SI
          LOOP LAB
    答:————
138.<ShortAnswer> BEG为起始地址的存储区域中存放有100个字节数据,现将其首、尾颠倒过来,重新排放这100个字节数据。请在程序中的空格处填入适当的指令使其完整。     (1)       (2)   (3)   
MOV CX,32H
    LEA SI,BEG
    MOV DI,SI
   
    DON:MOV AL,
    
    MOV ,AL
    
    DEC DI
    LOOP DON
    HLT
    答:————
139.<ShortAnswer> 写一个把字符串中的大写字母改写为小写字母的子程序(近过程)。设字符串以0为结束标志。
    答:————
140.<ShortAnswer> 编制程序段实现:将AX寄存器中的16位二进制数分成四组,每组4位,然后把这4组数分别放在AL、BL、CL、和DL中。
    答:————
141.<ShortAnswer> BEG为起始地址的存储区域中存放有100个字节数据,现将其首、尾颠倒过来,重新排放这100个字节数据。请在程序中的空格处填入适当的指令使其完整。
    MOV CX,32H
    LEA SI,BEG
    MOV DI,SI
       (1)   
    DON:MOV AL,
       (2)   
    MOV ,AL
       (3)   
    DEC DI
    LOOP DON
    HLT
    答:————
142.<ShortAnswer> MOV DL,AL
   NOT DL
   TEST DL,04H
   JE NEXT
      ┇
NEXT:…
   若上述程序段执行时产生分支,说明AL中的数第几位一定为1?程序段执行后CF是多少?
    答:————
143.<ShortAnswer> 执行下列程序段后,回答问题。
   ORG 1221H MOV BX,OFFSET NUM
    NUM DW 12H MOV CL,BYTE PTR NUM+1
    … MOV CH,TYPE NUM
    MOV AX,NUM HLT
    请问:(AX)=______,(BX)=______,(CX)=______。
    答:————
144.<ShortAnswer> 下面程序的功能是什么?
MOV AX,X
CMP AX,Y
JGE LAB
XCHG AX,Y
LAB:MOV X,AX
    答:————
145.<ShortAnswer> 某程序欲用单个字符显示的2号功能调用去显示STRING中的字符串‘COMPUTER’(不显示字符‘$’!).试在空白处填上适当的一条指令。
STRING DB‘COMPUTER’,‘$’

MOV BX,0FFSET STRING
LOP:MOV DL,
    MOV AH,02H
    INT 21H
    _____ _______________
    _____   ________
JNE LOP
    答:————
146.<ShortAnswer> FACTPROC
         PUSHDX
         MOV   DX,AX
         CMP   AX,0
         JZ   DONE
         DEC   AX
         CALLFACT
         MULDX
         POP   DX
         RET
DONE:MOVAX,1
         POP   DX
         RET
FACT   ENDP
若执行以上子程序前,(AX)=5,则子程序完成的功能是:                        ,执行该子程序后(AX)=                     。
    答:————
147.<ShortAnswer> 在BUF1和BUF2两个数据区中,各定义有10个带符号字数据,试编制一完整的源程序,求它们对应项的绝对值之和,并将和数存入以SUM为首址的数据区中。
    答:————
148.<ShortAnswer> 编定程序段,用DOS的1号功能调用通过键盘输入一字符,并判断输入的字符。如字符是"Y",则转向YES程序段;如字符是"N",则转向NO程序段;如是其他字符,则转向DOS功能调用,重新输入字符。(考生勿需写出源程序格式,只需写出与试题要求有关的指令序列)(YES和NO分别是两程序段入口处的标号)      
KEY:MOV AH,1
INT 21H
CMP AL,‘Y’
JE YES
CMP AL,‘N’
JE NO
JMP KEY
    答:————
149.<ShortAnswer> 已知
AX=0FF60H,CF=1            
MOV DX,96
XOR DH,0FFH
SBB AX,DX
执行上述指令序列后,AX=__________________________,CF=__________________________。
    答:————
150.<ShortAnswer> 现有下列数据段:
   DATA SEGMENT
   STR1 DB‘ABCDEFGHIJKL'
   COUNT EQU -STR1
   BUF DB COUNT DUP(0)
   DATA ENDS
   下面程序段是实现把STR1中所有字符逆向传送到BUF缓冲区(即STR1中第一个字符送到BUF的最后一个单元,STR1中最后一字符送到BUF的第一个单元)。试把程序中所空缺的指令填上。
   MOV SI,OFFSET BUF-1
   MOV DI,OFFSET BUF
   MOV CX,COUNT
   ____________________或____________________
   LOOP:MOVSB
   _____________________或_____________________
   LOOP LOP
    答:————
151.<ShortAnswer> 下面程序段是判断寄存器AH和AL中第3位是相同,如相同,AH置0,否则AH置全1。试把空白处填上适当指令.
_____ XOR AH,AL____________________
AND AH,08H
______ JE ZERO__________________
MOV AH,OFFH
JMP NEXT
ZERO:MOV AH,0
NEXT:……
    答:————
152.<ShortAnswer> DA3 EQU WORD PTR DA4
DA4 DB 0ABH,89H

SHR DA3,1
MOV DX,DA3
SHL DA4,1
MOV CX,DA3
上述程序段运行后,CX=____________________,DX=____________________。
    答:————
153.<ShortAnswer> 执行下列程序段后,回答问题。
   ORG 1221H MOV BX,OFFSET NUM
    NUM DW 12H MOV CL,BYTE PTR NUM+1
    … MOV CH,TYPE NUM
    MOV AX,NUM HLT
    请问:(AX)=________,(BX)=________,(CX)=________。
    答:————
154.<ShortAnswer> 某程序欲用单个字符显示的2号功能调用去显示STRING中的字符串‘COMPUTER’(不显示字符‘$’!).试在空白处填上适当的一条指令。
STRING DB‘COMPUTER’,‘$’

MOV BX,0FFSET STRING
LOP:MOV DL,
    MOV AH,02H
    INT 21H
    ______ ____________________
    ______   __________
JNE LOP
    答:————

更多学习资料www.openhelp100.com
页: [1]
查看完整版本: 《汇编语言》考前练兵