主题:逻辑运算符
jzwtzg
[专家分:0] 发布于 2005-10-19 16:57:00
not 2
1 and 3
3 or 4
请问它们的结果是什么 ,为什么?
回复列表 (共4个回复)
沙发
moz [专家分:37620] 发布于 2005-10-19 17:21:00
not 2 = not 00000010 (二进制)= 11111101 (二进制)= -3
1 and 3 = 00000001 and 00000011 = 00000001 = 1
3 or 4 = 00000011 or 00000100 = 00000111 =7
板凳
飞鸟12 [专家分:2830] 发布于 2005-10-19 17:33:00
FOR i = 0 TO 4
PRINT i, RIGHT$("0000" + HEX$(i), 4)
NEXT i
PRINT "NOT 1", RIGHT$("0000" + HEX$(NOT 1), 4)
PRINT "1 AND 3", RIGHT$("0000" + HEX$(1 AND 3), 4)
PRINT "3 OR 4", RIGHT$("0000" + HEX$(3 OR 4), 4)
END
显示为:
0 0000
1 0001
2 0002
3 0003
4 0004
NOT 1 FFFE
1 AND 3 0001
3 OR 4 0007
3 楼
英子 [专家分:50] 发布于 2005-10-19 20:03:00
not 2 = not 00000010 (二进制)= 11111101 (二进制)= -3
学过二进制,可为什么11111101会等于-3,不明白
4 楼
moz [专家分:37620] 发布于 2005-10-19 20:52:00
你学二进制的时候是怎样学的?
我只知道我学的时候非常不认真,自己看书也看得很头疼.
现在多数计算机中表示负数的二进制都使用其正数的反码+1来表示,
第一位是符号位.
正3: 00000011
反码: 11111100
+ 1
-----------------
负3 11111101
我来回复