整型进制转换(八进制,十进制,十六进制)

一、介绍

1.十进制: 都是以0-9这九个数字组成,不能以0开头。

2.二进制: 由0和1两个数字组成。

3.八进制: 由0-7数字组成,为了区分与其他进制的数字区别,开头都是以0开始。

4.十六进制:由0-9和A-F或a-f组成。为了区分于其他数字的区别,开头都是以0x开始。

|------|-----|-----|------|
| 二进制 | 八进制 | 十进制 | 十六进制 |
| 0000 | 0 | 0 | 0 |
| 0001 | 1 | 1 | 1 |
| 0010 | 2 | 2 | 2 |
| 0011 | 3 | 3 | 3 |
| 0100 | 4 | 4 | 4 |
| 0101 | 5 | 5 | 5 |
| 0110 | 6 | 6 | 6 |
| 0111 | 7 | 7 | 7 |
| 1000 | 10 | 8 | 8 |
| 1001 | 11 | 9 | 9 |
| 1010 | 12 | 10 | A |
| 1011 | 13 | 11 | B |
| 1100 | 14 | 12 | C |
| 1101 | 15 | 13 | D |
| 1110 | 16 | 14 | E |
| 1111 | 17 | 15 | F |

二、Windows自带计算器

输入:比如十进制的10,则点击 DEC ,在输入10 ;计算OX12,则点击 HEX 输入12即可。

三、十进制转八进制

转换原理:除以8,反向取余数,直到商为0终止。

例:500 --> 0764

四、十进制转十六进制

转换原理:除以16,反向取余数,直到商为0终止。

例:500 --> 1F4 或 1f4

1 2 3 4 5 6 7 8 9 A或a B或b C或c D或d E或e F或f
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
[余数对应数字]

五、八进制转十进制

转换原理:八进制数的每一位乘以对应的权值(8的幂),然后将结果相加,得到十进制数。

例: 0764 --> 500

0*8^3+7*8^2+6*8^1+4*8^0

六、十六进制转十进制

转换原理:十六进制数的每一位乘以对应的权值(16的幂),然后将结果相加,得到十进制数。

|---|---|---|---|---|---|---|---|---|-----|-----|-----|-----|-----|-----|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A或a | B或b | C或c | D或d | E或e | F或f |
| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
[余数对应数字]

例:1F4 或 1f4 --> 500

七、十进制转二进制

转换原理:除以2,反向取余数,直到商为0终止。

例:500 --> 0001 1111 0100

注:4位一组,不足4位补0

八、二进制转十进制

转换原理:十六进制数的每一位乘以对应的权值(2的幂),然后将结果相加,得到十进制数。

**例:**0001 1111 0100 --> 500

九、二进制转八进制

转换原理:三合一法

|-----|-----|-----|-----|-----|-----|-----|-----|-----|
| 二进制 | 000 | 001 | 010 | 011 | 100 | 101 | 110 | 111 |
| 八进制 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |

例:0001 1111 0100 --> 0764

注意:八进制转二进制,反向操作,一变三

十、二进制转十六进制

转换原理:四合一法

|------|------|------|------|------|------|------|------|------|
| 二进制 | 0000 | 0001 | 0010 | 0011 | 0100 | 0101 | 0110 | 0111 |
| 十六进制 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 二进制 | 1000 | 1001 | 1010 | 1011 | 1100 | 1101 | 1110 | 1111 |
| 十六进制 | 8 | 9 | A | B | C | D | E | F |

例:0001 1111 0100 --> 1F4

注意:十六进制转二进制,反向操作,一变四

相关推荐
wdfk_prog15 分钟前
嵌入式面试真题第 11 题:RTOS 优先级翻转与实时任务阻塞的通用治理
c语言·缓存·面试·职场和发展·架构
无相求码6 小时前
罪魁祸首:for 括号后面那个"隐形分号"
c语言
hy.z_7776 小时前
【C语言】11. 深入理解指针1
c语言·开发语言
ComputerInBook8 小时前
C & C++ 中的关键字 volatile 之详解
c语言·c++·volatile·编译器优化
智者知已应修善业9 小时前
【51单片机实现初始化数码管不显示按启动从0秒计时到60按暂停一次显示当前秒按2次恢复原始状态】2024-6-11
c语言·c++·经验分享·笔记·嵌入式硬件·算法·51单片机
小樱花的樱花9 小时前
Linux 多线程编程:互斥锁(Mutex)详解
linux·c语言·开发语言
noipp11 小时前
推荐题目:洛谷 P13554 【MX-X15-T1】奶龙龙
c语言·数据结构·c++·算法·编程·洛谷
aramae13 小时前
C++11:现代C++的里程碑
c语言·开发语言·c++·windows·git·后端
无相求码13 小时前
为什么你的第二个 scanf 还没输入就直接跳过了?C语言输入缓冲区陷阱
c语言·后端
文祐14 小时前
C语言利用数组计算矩阵乘法
c语言·开发语言·矩阵