求助汇编语言中or和and的意义
不太理解这两个指令的意义,能不能举个例子,请达人救我.moval,1oral,2这两条命令执行后的结果是什么,为什么是这个结果?谢谢...
不太理解这两个指令的意义,能不能举个例子,请达人救我.
mov al,1
or al,2
这两条命令执行后的结果是什么,为什么是这个结果?谢谢 展开
mov al,1
or al,2
这两条命令执行后的结果是什么,为什么是这个结果?谢谢 展开
5个回答
展开全部
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
例: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
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
or指令对目的操作数和源操作数进行或运算,结果存在目的操作数中.
and指令对目的操作数和源操作数进行与运算,结果存在目的操作数中.
and举例:字符的大小写转化'a'->'A'
mov al,'a'
and 01000001b
a的ascii 为97 al= 01100001
and 01000001
al = 01000001
得到65 即 'A'的ascii码
or举例:字符的大小写转化'A'->'a'
mov al,'A'
or al,00100000b
a的ascii 为65 al=01000001
or 00100000
al = 01100001
得到97 即 'a'的ascii码
另外and和or指令执行后都是清除了溢出和进位标志,同时根据目的操作数的结果设置零标志,符号标志,奇偶标志,可以根据这些标志进行程序的跳转
and指令对目的操作数和源操作数进行与运算,结果存在目的操作数中.
and举例:字符的大小写转化'a'->'A'
mov al,'a'
and 01000001b
a的ascii 为97 al= 01100001
and 01000001
al = 01000001
得到65 即 'A'的ascii码
or举例:字符的大小写转化'A'->'a'
mov al,'A'
or al,00100000b
a的ascii 为65 al=01000001
or 00100000
al = 01100001
得到97 即 'a'的ascii码
另外and和or指令执行后都是清除了溢出和进位标志,同时根据目的操作数的结果设置零标志,符号标志,奇偶标志,可以根据这些标志进行程序的跳转
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
AND主要用在使一个操作数中的若干位维持不变,而另外若干位清为0的场合
OR主要用在使一个操作数中的若干位维持不变,而另外若干位清为1的场合
这两个指令也可以把CF清0,自己与自己相“与”或相“或”,则值不变,CF清为0
----------------------------
0000 0001 与0000 0010相或,结果为0000 0011
AL=3
OR主要用在使一个操作数中的若干位维持不变,而另外若干位清为1的场合
这两个指令也可以把CF清0,自己与自己相“与”或相“或”,则值不变,CF清为0
----------------------------
0000 0001 与0000 0010相或,结果为0000 0011
AL=3
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
mov al ,1
把1存放到al这个寄存器里
or al, 2
把 al中的数与2相或
也就是00000001与00000010相或
结果是00000011也就是3
所以al中为3
把1存放到al这个寄存器里
or al, 2
把 al中的数与2相或
也就是00000001与00000010相或
结果是00000011也就是3
所以al中为3
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
0000 0001
0000 0010
-----------
0000 0011
al=3
0000 0010
-----------
0000 0011
al=3
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询