从零学起-----通识篇01 进制转换
目录
一、目标
二、学习说明背景
三、学习内容
1、进制定义
2、各进制间的转换方法
2.1 二进制转其他进制
2.2 十进制转其他进制
2.3 八进制转其他进制
2.4 十六进制转其他进制
2.5 小数进制转换(求x进制时,乘x取整,正序取值)
四、学习总结
五.练习答案及求解过程:
一、目标
理解二进制/八进制/十进制/十六进制的原理
掌握各种不同的进制间的转换方法
二、学习说明背景
进制转换是作为一个程序员的必备技能,它是人们利用符号来计数的方法。进制转换由一组数码符号和两个基本因素“基数”与“位权”构成。基数是指具体的量值。位权是指,进位制中"位对应的单位值.实际开发中的多媒体数据采集、分割、压缩、编解转码、传输、纠错、合并等工作都与它息息相关。
三、学习内容
学习之前,先留下习题:
练习:10011B+45D=___H?
让我们带着问题学习,练习过程及答案在文末.
1、进制定义
二进制:是指在数学和数字电路中以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、各进制间的转换方法
2.1 二进制转其他进制
- 二进制转十进制:采用位置计数法,其位权是以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 十进制转其他进制
- 十进制转二进制:整数采用“除2倒取余”,小数采用“乘2取整”。例如十进制数135转换成二进制时,将135除以2,得余数,直到不能整除,然后再将余数从下至上倒取,结果为10000111B
- 十进制转八进制:和转二进制的方法类似,整数采用“除8倒取余”,小数采用“乘8取整”。例如十进制数10转换成二进制时,将10除以8,得余数,直到不能整除,然后再将余数从下至上倒取,结果为12O
- 十进制转十六进制:思路和转二进制、八进制一样,十进制数25转换成十六进制时,结果为19H
2.3 八进制转其他进制
- 八进制转二进制:和二进制转八进制的方法相反,采用三合一法,例如:263O = 010 110 011B
- 八进制转十进制:和二进制转十进制的方法一样,采用位置计数法,其位权是以8为底的幂,顺序从右到左,从0开始计数。例如八进制数26(八进制) = 2 * 81 + 6 * 80 = 22D
- 八进制转十六进制:不能直接转换,需要先转成二进制,再将二进制转成十六进制
2.4 十六进制转其他进制
- 十六进制转二进制:和二进制转十六进制的方法相反,采用四合一法,例如:B3H = 1011 0011 = 10110011B
- 十六进制转八进制:不能直接转换,需要先转成二进制,再将二进制转成八进制
- 十六进制转十进制:和二进制转十进制的方法一样,采用位置计数法,其位权是以16为底的幂,顺序从右到左,从0开始计数。例如十六进制数26H = 2 * 161 + 6 * 160 = 38D
2.5 小数进制转换(求x进制时,乘x取整,正序取值)
以10进制的18.375转换2进制为例
先算整数部分:18
再计算小数部分:0.375
所以结合整数部分与小数部分
18.375(10)=10010.011(2)
四、学习总结
这是制作的归纳表格,进制转换在不同情况下的方法不同,初学容易混乱,以下表格可以参考,对比不同以达到快速记忆的目标.
二进制 |
八进制 |
十进制 |
十六进制 |
||||
区别 |
末位为B |
末位为O |
末位为D |
末位为H |
|||
转二进制 |
/ |
三合一法(逆用) |
整数:除二倒取余 |
四合一计数法(逆用) |
|||
小数:乘二取整 |
|||||||
转八进制 |
三合一法 |
/ |
整数:除八倒取余 |
先转二进制(四合一逆用) |
|||
小数:乘八取整 |
再转八进制(三合一) |
||||||
转十进制 |
位置计数法 |
位置计数法 |
/ |
位置计数法 |
|||
转十六进制 |
四合一计数法 |
先转二进制(三合一逆用) |
整数:除十六倒取余 |
/ |
|||
再转十六进制(四合一) |
小数:乘十六取整 |
五.习题&答案及求解过程:
回到一开始的问题:10011B+45D=?
以下是求解思路:
先统一进制,将二进制数转换为十进制,并求和
运用方法:除十六倒取余,求得结果为40H
以上就是问题的解答过程了.
此外我还带来了我学习时做过的三道题和它们的求解思路,解答思路依旧在最后.
1. 二进制数10110B+十进制数78D=?(结果转为十六进制数)
2. 二进制数10010B+十进制数37D=?(结果转为十六进制数)
3. 二进制数(111 1000 0000 1001)B转化为十六进制数求结果.
1 解:
2. 解:
3. 解:
从零学起-----通识篇01 进制转换相关推荐
- 从零学起-----通识篇08 IP
目录 一.学习目标 二.学习背景 三.学习内容 1.IP地址 2.网络号与主机号 3.IP地址分类 4.特殊地址(全为1和全为0) 5.无分类地址CIDR 6.私有地址(子网) 7.网关 8.子网掩码 ...
- 【教女朋友学网络系列2】之进制转换及IP地址类
关于数制转换及IP地址 序言 一.计算机的数制 1.数制: 2.数位: 3.基数: 4.位权: 二. 数制系统 1.二进制 2.十进制 3.十六进制 三.IP 1.什么是IP 2.分类 四.子网掩码 ...
- 《算法零基础》第20讲:进制转换(2)习题
前言 文章参考自:英雄哪里出来 目录 前言 LeetCode 168. Excel表列名称 分析 代码 171. Excel 表列序号 分析 代码 课后习题 LeetCode 483. 最小好进制 L ...
- 从零学起之安卓篇《按键精灵安卓版找图找色应用汇总介绍》更新20
本期主题:介绍目前手机按键(按键精灵安卓版)在编写脚本中,都需要用到哪些方式进行图色识别. 惯例先讲好处: 1.找色,如何计算颜色相似度,解决不同款式手机中画面颜色差异的问题. 2.找图,不太推荐,我 ...
- C认证笔记 - 计算机通识 - 进制转换
计算机通识 - 目录指引 计算机通识 1:进制转换 1.0 任务目标 1.1 进制的定义 1.2 各进制间的转换方法 1.2.1 「二进制」转「十进制」 1.2.2 「二进制」转「八进制」 1.2.3 ...
- 15从零开始学Java之详解计算机中的进制转换
作者:孙玉昌,昵称[一一哥],另外[壹壹哥]也是我哦 CSDN博客专家.万粉博主.阿里云专家博主.掘金优质作者 配套项目资料 https://github.com/SunLtd/LearnJava h ...
- C语言取字节的第n二进制,学C语言的看过来,最完整进制转换、整数和小数内存存储模型...
什么是进制 进制也就是进位计数制,是人为定义的带进位的计数方法.对于任何一种进制---N进制,就表示每一位置上的数运算时都是逢N进一位. 数数相信大家都会了,比如0 1 2 3 4 5 6 7 8 9 ...
- 二进制 八进制 十进制 十六进制 之间进制转换(图解篇)
一.本文所涉及的内容(Contents) 目录 一.本文所涉及的内容(Contents) 二.背景(Contexts) 三.进制转换算法(Convert) ( ...
- 进制转换对学计算机的意义,浅析进制转换在计算机应用中的技巧.docx
2019年浅析进制转换在计算机应用中的技巧 1.二进制的使用意义 一种新处置器的盛行,离不开响应软件的支撑.开拓新的处置器能够会由于落空响应软件的支撑而影响其推行使用和市场前景;另一方面,得不到普遍使 ...
最新文章
- 零基础学习Python需要注意的几个点,Python培训机构排名
- 四针角oled屏连接arduino_使用Arduino开发板连接OLED显示屏制作一款智能手表
- #化鲲为鹏,我有话说# 鲲鹏弹性云服务器配置 Tomcat
- 利用百度云解压需要密码的资源(需要高级会员
- 【转】BW的星型数据模型
- MapReduce 规划 系列十 采用HashPartitioner调整Reducer计算负荷
- 产品经理面试必问问题与答题模板
- 那智机器人程序打印_应用程序,机器人程序,无人机和3D打印机:要来附近的学校吗?...
- 安装cm初始脚本配置数据库scm_prepare_database.sh(在主节点上)遇到的问题
- 模拟网络延迟抖动测试
- movie制作的电影站wordpress视频主题
- 吐血整理的大数据学习资源大全
- Linux drcom
- OpenStack之服务端口号
- 再来!使用frida框架hook来获取APP的加密算法的参数
- Flutter 实体类转String,String转实体类
- uni-app 开发 ios底部安全区域(底部白色区域块)
- FPGA--(基于Quartus的FPAG程序下载与固化教程)VGA显示实验之上板测试
- 交换机基本原理与应用
- 【已解决】win10远程桌面连接报错:出现身份验证错误,要求的函数不受支持(CredSSP)