计算机汇编试题14、AL和VAR字节单元中分别存放一个带符号数,执行CMP AL,VAR时,如AL>VAR,那么溢出位和

计算机汇编试题
14、AL和VAR字节单元中分别存放一个带符号数,执行CMP AL,VAR时,如AL>VAR,那么溢出位和符号位 的关系是( )。
A、OF=SF B、OF≠SF C、OF=SF=1 D、OF=SF=0
15、TEST DL,55H
JE NEXT

NEXT: ……

上述程序段,执行JE指令时能产生转移的情况是( )
A. DL>55H B. DL<55H C. DL=55H D. DL中第0,2,4,6位均为0
16、设DS=8225H,DI=3942H,指令NEG BYTE PTR[DI]操 作数的物理地址是( )
A、85B92H B、86192H C、BB690H D、12169H
17、执行除法指令后,影响的标志位是( )。
A、CF,OF B、SF,ZF C、CF,OF,SF
D、AF,CF,OF,PF,SF,ZF都不确定
18、执行下面指令序列后,结果是( )。
MOV AL,82H / CBW
A、AX=0FF82H B、AX=8082H C、AX=0082H D、AX=0F82H
19、与MOV BX,OFFSET VAR指令完全等效的指令是( )。
A、MOV BX,VAR B、LDS BX,VAR C、LES BX,VAR D、LEA BX,VAR
20、使用DOS功能调用时,子程序的编号应放在寄存器中( )
A. AH B. AL C. AX D. 任意指定
21、设BX的内容为0AA40H,执行SHR BX,1后,BX=( )
A. 5520H B. 5480H C. 0D420H D. 0D580H
22、为使CX=-1时,转至MINUS而编制了指令序列,其中错误的序列是( )。
A、INC CX /JZ MINUS B、SUB CX,OFFFFH /JZ MINUS
C、AND CX,OFFFFH/ JZ MINUS D、XOR CX,OFFFFH /JZ MINUS
23、下面有语法错误的指令是( )
A. MOV AX,[BX][SI] B.MOV AX,-2[BX][DI]
C. MOV AX,[BX][BP] D.MOV AX,-1[BX][SI]
24、下列语句中能实现留空8个字节单元的语句是( )
A. DA1 DT ? B.DA2 DW ?,?
C. DA3 DD ? D. DA4 DQ ?
25、编写分支程序,在进行条件判断前,可用指令构成条件,其中不能形成条件的指令有( )。
A、CMP B、SUB C、AND D、MOV
26、下列操作中允许段超越的是( )
A. 取指令 B. 存目的串 C. 以BP为基址存取操作数 D. 堆栈操作
27、下列指令执行后能使BX中数据必为奇数的是( )
A. XOR BX,01H B. OR BX,01H
C. AND BX,01H D. TEST BX,01H
28、设CL=05H,要获得CL=0AH,可选用的指令是( )
A. XOR CL,0FH B.NOT CL
C. OR CL,0AH D. AND CL,0FH
29、设AX=0BBCCH,CF=1
OR AX,3
CMC
RCL AX,1
上述三条指令执行后,AX中的内容是( )
A.779FH B.779EH C.779DH D.7799H
30、汇编语言语句格式中,对名字项的规定,请指出错误的解释( )
A. 名字的第一个字符只可以是大小写英文字母及?、 @、__等
B. 名字的第一个字符可以是大小写英文字母、数字、?、@、__等
C. 名字的有效长度≤31个字符
D. 名字从第二个字符起可以出现数字,但不允许出现$、#等字符
nan-wwj 1年前 已收到1个回答 举报

1712561 春芽

共回答了24个问题采纳率:83.3% 举报

14、CMP指令用法:CMP 被减数,减数。结果不保存,只对FR各状态标志位有影响。
OF含义:当溢出时,OF=1,否则为0。
SF含义:与结果第一位相同。即结果为正数时,0XXXXXXXB,SF=0;结果为负数时,1XXXXXXXB,SF=1。
当AL大于0、VAR大于0时,OF=0,SF=0;
当AL大于0、VAR小于0时,OF=1,SF=1;
当AL小于0、VAR小于0时,OF=0,SF=0。
故结果为OF=SF,选A。
15、TEST指令用法:TEST dest,src。将两个数进行与操作,对应位都是1时结果为1,否则为0。结果不保存,只对FR部分状态标志位有影响。
JE跳转成立条件:FR中ZF=1。
ZF(ZeroFlag)含义:当结果为0时,ZF=1,否则ZF为0。
55H=01010101B
故欲使结果为0,DL第0、2、4、6位须为0,选D。
顺便说下,二进制数位数分别为第76543210位。
16、DS×10H+DI=8225H×10H+3942H=82250H+3942H=85B92H,选A。
17、本题涉及到的状态标志位含义。
CF称为进位标志,它反映加法运算后的进位或减法运算后的借位状态。貌似没提到除法。
OF见14题解。除法似乎不会溢出。
SF见14题解。这个应该有影响。
ZF见15题解。这个应该有影响。
AF称为辅助进位标志,它反映运算时低4位向高4位(即D3位向D4位)是否有进位或借位。这个大概和CF是类似的。
PF称为奇偶校验,当运算结果的低8位中“1”的个数为偶数时,PF为1,否则为0。这个似乎有影响。
结果为B。
18、CBW指令是将(字节扩展至字),B=byte,W=word,这个指令将扩展al的符号位至ah中。
当MOV AL 82H指令结束后,AL中内容为10000010B。CBW指令将扩展AL中第七位1至整个AH中,那么扩展完成后AX为1111111110000010B,即0FF82H,故选A。
19、OFFSET伪指令含义:加在变量名或标号前面,将得到变量名或标号的偏移量。
LEA指令用法:LEA dest,src 将src这个内存操作数的偏移量传送到dest指定的寄存器中。
LDS/LES指令用法:LDS/LES dest,src 将src这个内存操作数指定的内存中连续四个字节单元内容的低16位存入dest指定的通用寄存器中,高16位存入DS/ES中。
故选D。
20、中断号放在AH中,参数放在AL中。选A。
21、SHR指令用法:SHR dest,1或SHR dest,CL,CL中存储移动位数。
SHR指令效果:0→dest→CF。
BX=0AA40H=1010101001000000B→0101010100100000B=5520H,选A。
22、四个选项的共同语句JZ MINUS的含义是当ZF=0时跳转到MINUS。
CX=-1=0FFFFH。
INC dest为dest加1指令,INC CX的结果为-1+1=0。
SUB dest,src为dest减src指令,并将结果保存在dest中。SUB CX,0FFFFH的结果为0,并将结果存在CX中。
AND dest,src为与指令,dest和src的对应位都是1时结果为1,否则为0,并将结果保存在dest中。AND CX,0FFFFH为1111111111111111B与1111111111111111B相与,结果为
1111111111111111B=0FFFFH=-1,并将结果存入CX。
XOR dest,src为异或指令,dest和src的对应位异时为1,否则为0,并将结果保存在dest中。XOR CX,0FFFFH为1111111111111111B与1111111111111111B异或,所有位均相同,结果
为0000000000000000B=0000H=0,并将结果存入CX。
故AND指令不能完成题目的要求,答案为C。
23、不知道是B还是D。
24、各数据定义伪指令含义
DB定义字节,每个表达式占1个字节存储空间。
DW定义字,每个表达式占2个字节存储空间。
DD定义双字,每个表达式占4个字节存储空间。
DQ定义四字,每个表达式占8个字节存储空间。
DT每个表达式占10个字节存储空间。
REAL4定义4字节实数,每个表达式占4字节存储空间。
REAL8定义8字节实数,每个表达式占8字节存储空间。
REAL10定义10字节实数,每个表达十占10字节存储空间。
A留空了10字节空间;B留空了2×2=4个字节空间;C留空了4个字节空间;D留空了8个字节空间。故选D。
25、MOV指令只是单纯的数据传送,不对FR产生影响,故不能作为条件指令,选D。
26、串传送和串比较指令都可以跨段操作,选B。
取指令只允许在CS(CodeSegment,代码段寄存器)里取;BP基址指针寄存器,是记述偏移量的,不能脱离本段;堆栈操作只能在SS(StackSegment,堆栈段寄存器)中进行。
27、AND、XOR指令含义见22题解,TEST指令含义见15题解,它们都不能保证BX结果为奇数。
OR指令为或操作,当对应位都是0时为0,否则为1,并将结果存到dest中。因为01H=00000001H,尾数为1,所以OR指令执行后BX尾数必然为1,BX必然为奇数。故答案为B。
28、05H=00000101B,0AH=00001010B。
AND、XOR指令含义见22题解,OR指令含义见27题解。
NOT dest为非指令,使dest各位求反,即1变0或0变1。
XOR CL,0FH为CL=05H=00000101B与0FH=00001111B进行异或操作,结果为00001010B=0AH,正确,选A。
NOT CL为对CL=05H=00000101B的各位进行求反操作,结果为11111010B=FAH。
OR CL,0AH为CL=05H=00000101B与0AH=00001010B进行或操作,结果为00001111B=0FH。
AND CL,0FH为CL=05H=00000101B与0FH=00001111B进行与操作,结果为00000101B=05H。其实,这条语句在实际中的应用是将高4位清0,低4位保留。
29、OR指令含义见27题解。
CMC指令含义为CF求反,即0变1或1变0。
RCL为带CF循环左移,见下图。
CF←dest
↓ ↑
→→→↑
下面逐条分析三条语句。
OR AX,3将AX=0BBCCH=1011101111001100B与3=0003H=0000000000000011B进行或操作,结果为1011101111001111B,存入AX中。
CMC将CF求反,CF原来是1,现在为0。
RCL AX,1结果为AX=0111011110011110B=779EH,CF=1。
故选B。
30、严格说来,A、B选项最后的等都必须去掉的。
A选项与B选项矛盾,其中A选项正确,B选项错误。正确说法:从第二个字符开始可以是大小写字母、数字、?、@或_。注意,这几个符号必须用半角,否则程序不认。

1年前

8
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 17 q. 0.583 s. - webmaster@yulucn.com