已知变量unsigned short a=0xe9; unsigned short b=0xad;请问a4 ~b的值为
首先进行位运算符的优先级计算,括号中的运算符先计算,然后再计算位或运算符。
根据位运算符的规则: a<<4的结果是将a的二进制数向左移动4位,高位补0。即a<<4的结果为0xe900。
~b的结果是将b的二进制数的每一位取反,即0xad的二进制数为10101101,取反后为01010010。
再进行位或运算符的计算: 将0xe900和0x52进行位或运算,即将两个二进制数的每一位进行或运算。 0xe900的二进制数为1110100100000000,0x52的二进制数为01010010。 将两个二进制数的每一位进行或运算,得到的结果为: 1110100100000000 | 01010010 = 1110100100010010
将结果转换为十六进制,得到的结果为0xe912。
原文地址: http://www.cveoy.top/t/topic/iS7M 著作权归作者所有。请勿转载和采集!