十六进制取反操作

您所在的位置:网站首页 16进制数怎么算 十六进制取反操作

十六进制取反操作

2024-07-11 07:56| 来源: 网络整理| 查看: 265

有天群里有人问怎么给十六进制取反,就是0x61E90000取反后得到0x9E16FFFF.

有的就讨论了,先转为二进制然后按位取反,完成后再转十六进制.

我想了下,不管多少进制,都是数字,观察后发现两个数组相加和为0xFFFFFFFF.那就是可以用0xFFFFFFFF- 原值就是新的值.公式如下:

定义原十六进制数为int1,新十六进制数为int2 ,那么

int2 = 0xFFFFFFFF - int1;

int2即为得到的新值.

接着讨论下把十六进制转为二进制再取反的情况.

0x61E90000转为二进制是0110 0001 1110 1001 0000 0000 0000 0000.

0x9e16FFFF转为二进制是 1001 1110 0001 0110 1111 1111 1111 1111.

可见确实是按位取反得到的,那么如何对十六进制按位取反操作呢,使用波浪线~来,如下

int2 = ~int1

我们知道,计算机是不能把数字以二进制格式打印的,只能打印八进制,十进制,十六进制,因为数字在计算机中都是二进制存着的,对十六进制按位取反也就是对二进制数字按位取反.



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3