作业帮 > 数学 > 作业

已知如下程序段:DimA,B,MycheckA=10:B=8Mycheck=A And B执行以上程序段后,MyChec

来源:学生作业帮 编辑:作业帮 分类:数学作业 时间:2024/05/20 11:42:34
已知如下程序段:
DimA,B,Mycheck
A=10:B=8
Mycheck=A And B
执行以上程序段后,MyCheck为8
为什么?
因为当逻辑运算的操作数都是数值型数据时,则将数值转换为补码进行按位逻辑运算.正数的补码和原码相同,负数的补码为对该数的原码除符号位以外各位取反,然后在最后一位加1.
例如:10 And 8
10转换为二进制原码为01010,它的补码也是01010.
8转换为二进制原码为01000,它的补码也是01000.
10 and 8就是01010 and 01000,对相对应的位值进行逻辑运算.
10的第一位0和8的第一位0进行逻辑运算,结果为0,
10的第二位1和8的第二位1进行逻辑运算,结果为1,
10的第三位0和8的第三位0进行逻辑运算,结果为0,
10的第四位1和8的第四位0进行逻辑运算,结果为0,
10的第五位0和8的第五位0进行逻辑运算,结果为0,
所以最终的结果为01000,等于8.