###C语言程序设计-----C语言学习(12)#进制间转换,十进制,二进制,八进制,十六进制

前言:感谢您的关注哦,我会持续更新编程相关知识,愿您在这里有所收获。如果有任何问题,欢迎沟通交流!期待与您在学习编程的道路上共同进步。

计算机处理的所有信息都以二进制形式表示,即数据的存储和计算都采用二进制,同时对于计算机系统所识别的也主要为二进制,如:单片机系统等,所以今天我们分享二进制,八进制,十进制,十六进制,以及进制间的转换。

目录

[一. 进制的简单介绍](#一. 进制的简单介绍)

1.二进制

2.八进制

3.十进制

4.十六进制

[二. 进制间转换](#二. 进制间转换)

1.其他进制转十进制

(1)二进制转十进制

(2)八进制转十进制

(3)十六进制转十进制

2.十进制转其他进制

(1)十进制转二进制

(2)十进制转八进制

(3)十进制转十六进制


一. 进制的简单介绍

进制是一种数学计数系统,用于表示数值。在计算机科学和数字电子中,进制尤为重要,因为计算机只能理解和处理二进制数据。

1.二进制

二进制是一种基础的数字系统,它只有两个数码0和1,可以表示任何数字信息哦。

2.八进制

八进制是一种以8为基数的计数法,它采用0到7这八个数字,并且逢八进一。在计算机科学和电子技术中,八进制常用于表示和处理数字、数据和指令。比如,在计算机系统中,文件和目录的权限通常以八进制形式表示。此外,八进制也常用于UNIX时间戳、文件和存储容量、POSIX文件权限、系统调用操作码以及文件和目录索引节点(iNode)的表示。

与二进制相比,八进制可以减少数字的长度和复杂度,因为每一位八进制数可以对应三位二进制数。这使得八进制在计算机科学中成为一种重要的数制系统。

3.十进制

十进制是我们日常生活中最为熟悉和常用的一种数制系统。它基于10个数字(0-9),并且遵循"逢十进一"的规则。在十进制中,每一位数字的权重是10的幂次,从右向左依次增加。例如,数字"123"可以表示为1×10^2 + 2×10^1 + 3×10^0。

十进制数的特点是直观易懂、易于理解和使用。我们在进行数字的四则运算、货币计算、单位换算以及各种数学应用时,通常都使用十进制数。此外,十进制数也可以方便地与其他进制数进行转换,如二进制、八进制和十六进制等。

与其他进制数相比,十进制数在人类生活和科学计算中占据重要地位。它不仅是我们日常生活和工作中使用的主要数制系统,也是计算机科学和电子技术中不可或缺的一部分。

4.十六进制

十六进制(Hexadecimal)是一种基数为16的计数系统,它采用0到9和A到F这16个数字来表示数值。其中,A到F代表10到15的十进制数。十六进制数的特点是逢16进1,这意味着当某一位的数字达到16时,它会向前一位进位。

在计算机科学和电子技术中,十六进制是一种非常重要的数制系统。由于它使用16个数字来表示数值,因此它比二进制和八进制更加紧凑,能够减少数字的长度和复杂度。这使得十六进制成为表示二进制数据的一种有效方式,特别是在低级编程、内存和存储器管理、网络协议和通信等领域中广泛应用。

十六进制数的表示方式非常直观,可以通过将每四位二进制数转换为一位十六进制数来实现。这种转换方式使得大整数和二进制数据在十六进制下更加易读和处理。此外,十六进制与二进制之间可以方便地进行转换,这也使得它在计算机科学中成为一种重要的数制系统。

二. 进制间转换

1.其他进制转十进制

(1)二进制转十进制

例如对于一个十进制数235,它由个位,十位,百位组成,所以235可以写成2*10^2+3*10^1+5*10^0

则同理对于一个二进制数1011可以写成

1*2^3+0*2^2+1*2^1+1*2^0 得出转换为十进制11

(2)八进制转十进制

首先八进制由01234567来表示,对于八进制数277可写成

2*8^2+7*8^1+7*8^0 得出转换为十进制数191

(3)十六进制转十进制

首先十六进制由0123456789ABCDEF组成,其中ABCDEF分别对应10,11,12,13,14,15,则对于十六进制数2AE可写成

2*16^2+10*16^1+14*16^0 得出转换十进制数686

2.十进制转其他进制

(1)十进制转二进制

十进制转其他进制可采用连除法,如十进制数29

29/2 余1

14/2 余0

7/2 余1

3/2 余1

1/2 余1 (一直连除到结果为0,只有余数为止)

0

此时余数从下到上排列得到二进制数11101

(2)十进制转八进制

例如十进制数900

900/8 余4

112/8 余0

14/8 余6

1/8 余1

0 此时得到转换得八进制数1604

(3)十进制转十六进制

例如十进制数2717

2717/16 余13

169/16 余9

10/16 余10

0 此时通过转换为十六进制为A9D

感谢老铁的浏览,希望老铁可以一键三连加个关注,您的支持和鼓励是我前进的动力,后续会分享更多学习编程的内容。

相关推荐
沃普天科技1 分钟前
USB显示器多屏异显多屏拼接IF8032 IT690 VL171 8801 RTD2556
arm开发·驱动开发·算法·计算机外设·音视频·硬件工程·pcb工艺
zz34572981134 分钟前
cy语言之指针3
数据结构
Byte Wizard6 分钟前
C语言指针深入浅出6
c语言·开发语言
知识分享小能手11 分钟前
R语言入门学习教程,从入门到精通,R语言数据处理与清洗 (9)
开发语言·学习·r语言
炽烈小老头18 分钟前
【 每天学习一点算法 2026/05/14】单词接龙
学习·算法
yxc_inspire23 分钟前
24年CCPC山东邀请赛补题
学习·算法
号码认证服务23 分钟前
如何让来电显示公司名代替陌生数字号码?企业号码认证开通指南
服务器·c语言·网络·经验分享·智能手机·云计算·php
计算机安禾25 分钟前
【c++面向对象编程】第19篇:多继承与菱形继承(二):虚拟继承的内存模型与复杂性
开发语言·c++
red_redemption27 分钟前
自由学习记录(187)
学习
木子墨51629 分钟前
工程算法实战 | 数据库ORDER BY的底层:内存排序 → 外部归并 → 索引优化
数据结构·数据库·python·sql·算法·动态规划