(资料图片)
二进制补码(Binary Two"s Complement)是一种表示有符号整数的方法,在计算机中广泛使用。它是通过对正数取反加一得到负数的表示方式。
在二进制补码表示中,一个固定位数的整数由固定数量的二进制位表示,其中最高位被用作符号位。对于N位的二进制补码表示,最高位(最左侧的位)为符号位,0表示正数,1表示负数。
正数的二进制补码表示与其二进制原码表示相同。例如,十进制数3的二进制补码表示为00000011
。
负数的二进制补码表示通过以下步骤获得:
例如,十进制数-3的二进制补码表示为11111101
。以下是对应步骤的说明:
00000011
。11111100
。11111101
,即-3的二进制补码表示。使用二进制补码的好处是可以将正数和负数的加法、减法等运算转化为相同的二进制操作,简化了计算机的运算逻辑。
需要注意的是,二进制补码表示中的最小负数的绝对值比最大正数的绝对值多一个单位,这是由于二进制补码表示中,负数的范围比正数的范围多一个。例如,在8位的二进制补码表示中,最小的负数是-128,而最大的正数是127。
int unsignedByte = byteValue & 0xFF;
可以得到无符号的byte值通过byte[4]来表示一个int数字,byte[4]就是4个字节的意思,每个byte[0]表示一个字段,取值都是-128~127,可以测试一下
log.info("{}", Bytes.toBytes(256));// [0, 0, 1, 0]log.info("{}", Bytes.toBytes(255));// [0, 0, 0, -1]log.info("{}", Bytes.toBytes(128));// [0, 0, 0, -128]log.info("{}", Bytes.toBytes(129));// [0, 0, 0, -127]log.info("{}", Bytes.toBytes(-1));// [-1, -1, -1, -1]log.info("{}", Bytes.toBytes(127));// [0, 0, 0, 127]
从上面的代码中,我们看到一个int类型的-1通过byte[]表示为[-1,-1,-1,-1],它是取-1的补码,再加1得到的。
关键词:
java~二进制补码的用途
工业硅再度大涨 “价格博弈进入关键节点”_全球微资讯
直播预告 | 四巫日天量期权到期,小盘科技股会迎来春天?_环球时快讯
动圈HiFi音质 竹林鸟霜华Z2入耳式耳机仅售99元|全球新消息
【当前热闻】新华全媒+|探访国内首条跨海高铁全线施工难度最大车站
联想笔记本电脑推荐带触屏笔 联想笔记本电脑推荐
安以轩发布生子喜讯,一家三口其乐融融
诺令生物完成上亿元B+轮融资 今头条
永城经开区高质量发展推进会召开|环球滚动
短讯!惊喜从进场那一刻开始 《猫神在故宫》端午节在北京天桥艺术中心首演
天天信息:柔性电子技术_关于柔性电子技术概略
张杰几岁了(张杰几岁) 快播
中国女排二队14人大名单曝光!
经济日报:增加耕地不能做表面文章 全球观速讯
世界热议:贺州市气象台发布暴雨橙色预警信号【II级/严重】【2023-06-20】
环球新资讯:2023年南宁兴宁区三塘镇中心幼儿园秋季学期招生简章
全球通讯!重大新闻!
蚂蚁积分有什么用_下面一起来了解一下_全球看点
全球报道:隆鑫通用:已全额收回7亿元私募基金认购款
101远程教育网入口_101远程教育网 全球热消息
当前快看:一汽解放:拟定增募资不超37.13亿元 用于新能源智能网联及整车综合研发能力提升项目等
天天热点!【U17亚洲杯】王钰栋2球对飚伊兰昆达 中国3比5澳洲
当前时讯:美国往事女主角黛博拉后来嫁给了谁 美国往事女主角
春雪食品股东减持计划实施时间过半,王振山减持公司股份15000股
采购是什么意思?_大采购是什么意思 环球观速讯
好水出好虾 2023年金盆五门闸龙虾美食品鉴会举行_全球头条
070期荣少双色球预测奖号:蓝球走势分析
全自动洗衣机尺寸规格长宽高_洗衣机尺寸规格长宽高 环球视讯
最新资讯:u盘文件夹被隐藏怎么恢复正常(u盘隐藏的文件夹怎么找出来)
用电负荷频创新高 央企能源保供备战“迎峰度夏”_热头条