本文目录一览:
为什么计算机喜欢用16进制?
不是喜欢,是不得不。计算机本质上采用的是二进制。十六进制是二进制的子集。
相关说明
16进制:用16作为基数的计数系统。用数字0-9和字母a-f(或其大写A-F)表示0到15。
用H表示十六进制
16进制就是逢16进1,但我们只有0~9这十个数字,所以我们用A,B,C,D,E,F这五个字母来分别表示10,11,12,13,14,15。字母不区分大小写。
十六进制数的第0位的权值为16的0次方,第1位的权值为16的1次方,第2位的权值为16的2次方……
所以,在第N(N从0开始)位上,如果是是数 X (X 大于等于0,并且X小于等于 15,即:F)表示的大小为 X * 16的N次方。
为什么使用16进制
16进制用于计算机领域的一种重要的数制;
对计算机理论的描述,计算机硬件电路的设计都是很有益的。比如逻辑电路设计中,既要考虑功能的完备,还要考虑用尽可能少的硬件,十六进制就能起到一些理论分析的作用。比如四位二进制电路,最多就是十六种状态,也就是一种十六进制形式,只有这十六种状态都被用上了或者尽可能多的被用上,硬件资源才发挥了尽可能大的作用。
十六进制更简短,因为换算的时候一位16进制数可以顶4位2进制数。
为什么硬件黑客喜欢用基数为16的计数方式在书写整数
-我们日常使用的是十进制数,每个位上可以出现:0 1 2 3 4 5 6 7 8 9共十个数,比如123=3*1+2*10+1*100,注意个位乘以10的0次方,十位乘以10的1次方,百位乘以10的2次方,...
-计算机无法找到电子元件能简单表示十种状态,找到能稳定表示两种状态的元件容易,所以采用二进制,每个位上可以出现:0 1共两个数,比如二进制1010=0*1+1*2+0*4+1*8=十进制的10,注意每位参与运算的是2的0次方、1次方、2次方,...所以叫二进制
-二进制计算机记忆起来容易,编程的人看起来麻烦,容易乱,就找了一种更容易记又容易翻译成二进制的方法来计数——16进制,每位上可以出现:0 1 2 3 4 5 6 7 8 9 A B C D E F,如十六进制B123=3*1+2*16+1*16*16+11*16*16*16=十进制45347,这样每位对应二进制4位,如B123写成二进制数就是1011 0001 0010 0011
-在写与硬件相关的程序时,一般用16进制数来写,这样可以与机器取得某种默契,利于调试程序,当然计算机在翻译程序时,需要将16进制数据转换成二进制的来用。
为什么很多程序,都喜欢用16进制来表示字符和数值
数据是二进制的,所以二进制的使用以及位运算非常多,
但是二进制太长了,所以一般用16进制表示,例如 0xF0 与 0x0F ,容易看清哪些位是零,哪些位是1, 对于位运算可读性比较好。
举个例:
0xF0 | 0x0F == 0xFF
一看就能明白了
如果你换成10进制,那就是:
240 | 15 == 255
这个感觉如何呢?
另外原因一个也就是look说的,十六进制写起来较短。
或者也可以说,大家都流行这样写,所以你要这样写,有些东西就是约定俗成,没有什么理由