目录
🔴 进制转换是软件工程师的必备技能,也是C1阶段的计算机通识模块之一,实际开发中的多媒体数据采集、分割、压缩、编解转码、传输、纠错、合并等工作都与它息息相关。
进制定义
💠 二进制
🔵 是指在数学和数字电路中以2为基数的记数系统,二进制只有0和1两个数字符号,其运算规律是逢2进1,例如101101。为了与其他进制区别,二进制数的后缀都用大写字母B,例如101101B
💠 八进制
🔵 一种以8为基数的计数法,采用0,1,2,3,4,5,6,7这八个数字符号,其运算规律是逢8进1,例如77。为了与其他进制区别,八进制数的后缀都用大写字母O(不是数字0),例如77O
💠 十进制
🔵 一种以10为基数的计数法,采用0,1,2,3,4,5,6,7,8,9这十个数字符号,其运算规律是逢10进1,例如88。为了与其他进制区别,十进制数的后缀都用大写字母D,例如88D
💠 十六进制
🔵 一种以16为基数的计数法,采用0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F这十六个数字和字母符号,其运算规律是逢16进1,例如9527。为了与其他进制区别,十六进制数的后缀都用大写字母H,例如9527H
各进制间的转换方法
二进制转其他进制
🔶 二进制转十进制:采用位置计数法,其位权是以2为底的幂,顺序从右到左,从0开始计数。例如二进制数1011B = 1 * 23 + 0 * 22 + 1 * 21 + 1 * 20 = 11D
🔶 二进制转八进制:采用三合一法,即从二进制的小数点为分界点,向左(或向右)每三位对应八进制的一位,不足三位的前面补0,例如:10110011B = (0)10 110 011 = 263O
🔶 二进制转十六进制:采用四合一法,即从二进制的小数点为分界点,向左(或向右)每四位对应十六进制的一位,不足四位的前面补0,例如:10110011B = 1011 0011 = B3H
十进制转其他进制
🔷 十进制转二进制:整数采用“除2倒取余”,小数采用“乘2取整”。例如十进制数135转换成二进制时,将135除以2,得余数,直到不能整除,然后再将余数从下至上倒取,结果为10000111B
🔷 十进制转八进制:和转二进制的方法类似,整数采用“除8倒取余”,小数采用“乘8取整”。例如十进制数10转换成二进制时,将10除以8,得余数,直到不能整除,然后再将余数从下至上倒取,结果为12O
🔷 十进制转十六进制:思路和转二进制、八进制一样,十进制数25转换成十六进制时,结果为19H
八进制转其他进制
🔶 八进制转二进制:和二进制转八进制的方法相反,采用三合一法,例如:263O = 010 110 011B
🔶 八进制转十进制:和二进制转十进制的方法一样,采用位置计数法,其位权是以8为底的幂,顺序从右到左,从0开始计数。例如八进制数26(八进制) = 2 * 81 + 6 * 80 = 22D
🔶 八进制转十六进制:不能直接转换,需要先转成二进制,再将二进制转成十六进制
十六进制转其他进制
🔷 十六进制转二进制:和二进制转十六进制的方法相反,采用四合一法,例如:B3H = 1011 0011 = 10110011B
🔷 十六进制转八进制:不能直接转换,需要先转成二进制,再将二进制转成八进制
🔷 十六进制转十进制:和二进制转十进制的方法一样,采用位置计数法,其位权是以16为底的幂,顺序从右到左,从0开始计数。例如十六进制数26H = 2 * 161 + 6 * 160 = 38D
图解
💬题目01
📝 二进制数10110B与十进制数78D相加,最后再将结果转换为十六进制数,那么这个十六进制数是______H?
🔴 先按转换方法将二进制数10110B转换为十进制数,得到22D,22D + 78D = 100D,再将十进制数100D转换为对应的十六进制数
💬题目02
📝 二进制数10010B与十进制数37D相加,最后再将结果转换为十六进制数,那么这个十六进制数是______H?
🔴 先按转换方法将二进制数10010B转换为十进制数,得到18D,18D + 37D = 55D,再将十进制数55D转换为对应的十六进制数
💬题目03
📝 二进制数111100000001001B转十六进制数的结果是_______H?
🔴 按四合一法将二进制数 111100000001001B 转换为十六进制数