1.2.1 二进制数和十六进制数
2025年09月26日
1.2.1 二进制数和十六进制数
二进制数可以表示单片机中的数据信号、地址信号和控制命令,后缀用字母B表示。例如,01101001B是8位二进制数。为了缩短数字的位数,可以用十六进制表示,十六进制的后缀用字母H表示。例如,69 H是十六进制数,且有01101001B=69 H。
二进制数转化为十六进制数的转化方法是将二进制数从末位以四位为单位进行划分,每个四位二进制数转化为一位十六进制数,如果二进制数的位数不是4的整数倍,则在数位的高位补0,使其成为4的整数倍;十六进制数转化为二进制数的转化方法是将每位十六进制数转化为四位二进制数。
当需要处理带符号的数时,用数的最高位表示数的符号:0表示正号,1表示负号。通常这种数码化了的带符号数称为机器数。机器数可以用原码、反码和补码来表示。正数的原码、反码和补码都相同,负数的原码为其符号位和数值位,负数的反码为其所对应的正数按位求反,负数的补码为该负数所对应的正数的反码加1。表1-1为8位二进制码组合对应的十六进制数、无符号数、有符号数的原码、有符号数的补码及有符号数的反码。
【例1-1】 机器字长为8位,求[+105]补和[—105]补。
解:[+105]补=01101001=69H
按位求反,得10010110,再加1,得10010111,故[—105]补=97H。
表1-1 8位数表示法的对照表