CMS程序网 加入收藏  -  设为首页
您的位置:CMS程序网 > 知识库 > 正文
求助汇编语言中or和and的意义
求助汇编语言中or和and的意义
提示:

求助汇编语言中or和and的意义

OR是按位“或”操作,当且仅当两操作数对应位都为“0”时结果相应位为“0”,否则结果相应位为“1”。
例:1101B OR 0100B = 1101B
AND是按位“与”操作,当且仅当两操作数对应位都为“1”时结果的相应位为“1”,否则结果相应位为“0”。
例:1101B AND 0100B = 0100B

mov al,1 ;0001B送AL
or al,2 ;0001B OR 0010B 结果送AL 即(AL0)=0011B=3
这两条命令执行后的结果是什么(AL)=3

汇编指令and、or什么意思?
提示:

汇编指令and、or什么意思?

1)and指令:逻辑与指令,按位进行与运算。
mov al, 01100011B
and al, 00111011B
执行之后:al =00100011B
通过该指令可将操作对象的相应位设为0,其他位保持不变。

2)or指令:逻辑或指令,按位进行或运算。
mov al, 01100011B
or al, 00111011B
执行之后:al =01111011B
通过该指令可将操作对象的相应位设为1,其他位保持不变

06软考题:某计算机指令字长为16位,指令有双操作数、单操作数和无操作数3种格式
提示:

06软考题:某计算机指令字长为16位,指令有双操作数、单操作数和无操作数3种格式

先B
16位的指令,操作数为两个的时候(每个占6位),那么操作码的长度为4位。
已知条件为双操作数指令为m条,还剩下2的4次方-m条双操作数指令没有用,可以用来向单操作数指令扩展。
因此最多单操作数指令为(2的4次方-m)*2的6次方,
如果不考虑有无操作数指令的话,那么就不用留下一个码点从单操作数指令扩展,上面就是最后的答案。但是题 中要求存在无操作数指令,所以还要再减去一个码点,最后答案就了B