为什么二进制要补零?
答案:5 悬赏:80 手机版
解决时间 2021-02-08 18:20
- 提问者网友:浩歌待明月
- 2021-02-08 07:44
为什么二进制要补零?
最佳答案
- 五星知识达人网友:我住北渡口
- 2021-02-08 08:37
在转换的过程中,最高位会补零,来到到8位、16位、32位或64位。因为计算机分二进制、八进制、十进制和十六进制,二进制数一般分为8位、16位、32位以及64位。
知识扩展:
二进制转换原则:
二进制:采用0和1表示
//规则:逢二进一 如:1010
八进制:采用0~7这八个数表示
//规则:逢八进一,在程序中表示八进制要在这个数的前面加个0 如055
十进制:采用0~9这10个数表示
//规则:逢九进一 如:95
十六进制:用16个阿拉伯数字表示,但我们只有0~9这十个数字,所以我们用A、B、C、D、E、F这五个数字表示 10、11、12、13、14、15,字母不区分大小写。
//规则:逢十六进一,在程序中表示16进制要在这个数的前方加0x 如: 0x6e
知识扩展:
二进制转换原则:
二进制:采用0和1表示
//规则:逢二进一 如:1010
八进制:采用0~7这八个数表示
//规则:逢八进一,在程序中表示八进制要在这个数的前面加个0 如055
十进制:采用0~9这10个数表示
//规则:逢九进一 如:95
十六进制:用16个阿拉伯数字表示,但我们只有0~9这十个数字,所以我们用A、B、C、D、E、F这五个数字表示 10、11、12、13、14、15,字母不区分大小写。
//规则:逢十六进一,在程序中表示16进制要在这个数的前方加0x 如: 0x6e
全部回答
- 1楼网友:詩光轨車
- 2021-02-08 10:53
二进制补零是为了判断正负,首位为零是正数,首位为1是负数。
比如00101001,转换成十进制就是41,看起来前面这两个零不要也罢,101001表达的意思也是一样的,但真的是这样吗?这里就牵涉到一个小问题。我们知道,十进制里有负数,那么二进制里有负数吗?
答案是肯定的。二进制里的负数当然不是加个负号那么简单,比如我刚刚提到的00101001,是十进制的41,那么-41在二进制里怎么表达呢?首先,取反码,即把00101001的每个数字都改变,得到11010110,然后再加上1(补码),得到11010
比如00101001,转换成十进制就是41,看起来前面这两个零不要也罢,101001表达的意思也是一样的,但真的是这样吗?这里就牵涉到一个小问题。我们知道,十进制里有负数,那么二进制里有负数吗?
答案是肯定的。二进制里的负数当然不是加个负号那么简单,比如我刚刚提到的00101001,是十进制的41,那么-41在二进制里怎么表达呢?首先,取反码,即把00101001的每个数字都改变,得到11010110,然后再加上1(补码),得到11010
- 2楼网友:春色三分
- 2021-02-08 10:32
这个问题要归结到二进制的算法上:
比如说:十进制 “逢十进一”
9以后到10了 10是转折点 说明要从个位数变到十位数了 也就是每完成十个数循环就要向前面位数加1
同样的:二进制 “逢二进一”
也就是数值每增加2 就要向前面一位加1 位数代表着数值的增加 所以后面要补上个0 提高它的位数 (由于二进制“逢二进一” 所以只存在两个数字0和1 它数值的增加要靠位数的提高来实现)
希望你能够理解 算法其实就相当于我们定的游戏规则 按照规则 游戏才能运行 所以补零是由规则决定的 你还可以试想一下 我们可以定个3进制 4进制 5进制 8进制 9进制 16进制 等 但我们常用的是2、8、10、16进制而已
比如说:十进制 “逢十进一”
9以后到10了 10是转折点 说明要从个位数变到十位数了 也就是每完成十个数循环就要向前面位数加1
同样的:二进制 “逢二进一”
也就是数值每增加2 就要向前面一位加1 位数代表着数值的增加 所以后面要补上个0 提高它的位数 (由于二进制“逢二进一” 所以只存在两个数字0和1 它数值的增加要靠位数的提高来实现)
希望你能够理解 算法其实就相当于我们定的游戏规则 按照规则 游戏才能运行 所以补零是由规则决定的 你还可以试想一下 我们可以定个3进制 4进制 5进制 8进制 9进制 16进制 等 但我们常用的是2、8、10、16进制而已
- 3楼网友:何以畏孤独
- 2021-02-08 09:16
很显然的呀,这和机器位数有关,8位机就要补全8位,64位机就要补全64位呀,其实计算机是很笨的呀
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯