二进制数和十六进制数,最后再补充说明一下二进制数和十六进制数的关系。在以位为单位表示数据时,使用二进制数很方便,但如果位数太多,看起来就比较麻烦。因此,在实际程序中,也经常会用十六进制数来代替二进制数。在C语言程序中,只需在数值的开头加上0x(0和x)就可以表示十六进制数。
二进制数的4位,正好相当于十六进制数的1位。例如,32位二进制数 00111101110011001100110011001101用十六进制数来表示的话,就是3DCCCCCD这个8位数。由此可见,通过使用十六进制数,二进制数的位数能够缩短至原来的1/4。位数变少之后,看起来也就更清晰了(图3-9)。
图3-9 通过使用十六进制数使位数变短
用十六进制数来表示二进制小数时,小数点后的二进制数的4位也同样相当于十六进制数的1位。不够4位时用0填补二进制数的低位即可。例如,1011.011的低位补0后为1011.0110,这时就可以表示为十六进制数B.6(图3-10)。十六进制数的小数点后第1位的位权是16-1,即1/16=0.0625,这个大家应该能理解吧。
图3-10 小数点后的二进制数的4位也相当于十六进制数的1位
通过学习第2章和本章的内容,想必大家已经掌握了计算机通过二进制数来处理数据(数值)的机制。接下来的一章,我们将继续向大家介绍用于数据存储的内存。如果大家在编程时能够时刻考虑到内存问题,那么就一定能彻底理解被公认为复杂难懂的C语言的数组和指针了。
酷客网相关文章:
评论前必须登录!
注册