int强转为byte得到什么

首先要知道在计算机中数值都是以二进制补码形式保存的,二进制的第一位是符号位,“0正1负”不可忘,正数的补码=原码,负数的补码=原码的反码(不包括第一位符号位)+1。
例:
在这里插入图片描述
第一步:int类型占32位,将233先转化为二进制00000000 00000000 00000000 11101001,
第二步:byte类型占8位所以得到11101001,第一位是‘1’,说明是负数;第三步:取反码得到10010110(第一位不动),给反码加1得到10010111–> -23

猜你喜欢

转载自blog.csdn.net/weixin_43249530/article/details/86664482