当前位置: 首页 > article >正文

C语言常见进制 (二进制、八进制、十进制、十六进制)详解

C语言常见进制的详解

  • 放在最前面的
  • 前言:
  • 1、分类
  • 2、二进制
      • (2.1)二进制的解释说明
      • (2.2)关于二进制的计算
      • (2.3) 二进制转换为八进制
      • (2.4) 二进制转换为十进制
  • 3、八进制
      • (3.1)八进制的解释说明及计算
      • (3.2) 八进制转换为二进制
      • (3.3)八进制化为十进制
  • 4、十进制
      • (4.1)十进制的解释说明
      • (4.2)十进制转二进制
  • 5、十六进制
      • (5.1)十六进制的解释说明
      • (5.2)十六进制转换为十进制
      • (5.3)十六进制要注意的
  • END

放在最前面的

🎈 🎈 我的CSDN主页:OTWOL的主页,欢迎!!!👋🏼👋🏼
🎉🎉我的C语言初阶合集:C语言初阶合集,希望能帮到你!!!😍 😍
👋🏼🎉🎊创作不易,欢迎大家留言、点赞加收藏!!! 🥳😁😍
在这里插入图片描述

前言:

本篇博客耗时三个多小时制作!!!
创作不易,欢迎大家留言、点赞加收藏!!!

1、分类

分为:二进制、八进制、十进制、十六进制

其中 数字 0、1 组成的数是 二进制

  • C语言中的表达

在C语言里,整数有三种表示形式:十进制,八进制,十六进制。
其中以数字 0开头,由 0 ~ 7 组成的数是 八进制
除表示正负的符号外,以1 ~ 9 开头,由 0 ~ 9 组成是 十进制
以 0X 或 0x 开头(是数字 0),由 A ~ F 或 a ~ f 组成是 十六进制

1、十进制:除表示正负的符号外,以1 ~ 9开头,由0 ~ 9组成。
如:128,+234,-278。
2、八进制:以0开头,由0~7组成的数。
如:0126, 050000.
3、十六进制:以0X或0x开头,由09,AF或a~f 组成。
如: 0x12A, 0x5a000。

2、二进制

(2.1)二进制的解释说明

二进制:二进制(binary),是在数学和数字电路中以 2 为基数的记数系统,是以 2 为基数代表系统的二进位制。
在这一系统中,通常用两个不同的符号0(代表零)和1(代表一)来表示 。

例子:


(2.2)关于二进制的计算

二进制数据也是采用位置计数法,其位权是以 2 为底的幂。
例如二进制数据 110,
逢 2 进 1,其权的大小顺序为2²、2¹、2º 。

如图:


(2.3) 二进制转换为八进制

整数部分最低有效位 开始,以 3位一组,最高有效位不足 3位时以 0补齐,每一组 均可转换成 一个八进制的值,转换完毕就是 八进制的整数。

  • 例子:

(2.4) 二进制转换为十进制

方法:“按权展开求和”,该方法的具体步骤是先将 二进制的数写成加权系数展开式,而后根据 十进制的加法规则进行求和
例子:

3、八进制

(3.1)八进制的解释说明及计算

以数字 0开头,由0~7组成的数是 八进制
例子:

八进制,Octal,缩写OCT或O,一种以8为基数的计数法,采用 0,1,2,3,4,5,6,7八个数字,逢 八进1。
例子:

(3.2) 八进制转换为二进制

一些编程语言中常常以数字 0开始表明该数字是 八进制。
八进制的数和二进制数可以按位对应(八进制 一位对应二进制 三位),因此常应用在计算机语言中。
例子:
规则:按照顺序,每 1位 八进制数 改写成等值的 3位 二进制数,次序不变。

(3.3)八进制化为十进制

例:将八进制数12转换成十进制数

4、十进制

(4.1)十进制的解释说明

十进制是 除表示正负的符号外,以1 ~ 9开头,由0 ~ 9组成。
例子:

十进制(Decimal System)是一种计数方法,即满十进一,
第一位位权为 10^0,第二位 10^1 ,第N位 10^(N-1),
该数的数值等于每位的(数值 × 位权)之和。

(4.2)十进制转二进制

  • 整数部分

十进制整数转换为二进制整数采用"除2取余,逆序排列"法。
具体做法是:(除2取余
用 2 去除 十进制整数,可以得到一个 商 和 余数;
再用 2 去除 商,又会得到一个 商 和 余数,
如此进行,直到商为零时为止
然后,(逆序排列
得到的余数作为二进制数的 低位有效位
得到的余数作为二进制数的 高位有效位,依次排列起来。
高位不够,补 0

5、十六进制

(5.1)十六进制的解释说明

以 0X 或 0x 开头(是数字 0) 的是十六进制
例子:

十六进制(简写为 hex 或 下标16 )
是一种基数为16的计数系统,是一种逢16进1的进位制。
通常用数字0、1、2、3、4、5、6、7、8、9
和字母 A、B、C、D、E、F(a、b、c、d、e、f)表示,
其中: A ~ F 表示 10~15,这些称作 十六进制数字

(5.2)十六进制转换为十进制

十进制数57,在16进制写作39。

(5.3)十六进制要注意的

如今的16进制 普遍应用在计算机领域,这是因为将4个比特位(Bit)化成单独的16进制数字不太困难。
1字节(Byte)可以表示成 2个连续的16进制数字。

可是,这种混合表示法容易令人混淆,因此需要一些字首、字尾或下标来显示
C语言、C++、Shell、Python、Java语言及其他相近的语言使用字首“0x”,
例如“0x5A3”。
开头的“0”令解析器更易辨认数,而“x”则代表十六进制(就如“O”代表八进制)。
在“0x”中的“x”可以大写或小写

END

“亲爱的读者们,文章到这里就结束啦😃。
不知道你对本文的内容有什么看法呢🧐?
是赞同还是有不同的见解🤔?
或者在阅读过程中有没有遇到什么疑问❓
都欢迎在评论区留言告诉我哦,期待与你的互动交流🤗!”

每天都在学习的路上!
On The Way Of Learning


http://www.kler.cn/a/374810.html

相关文章:

  • LLaMA-Factory(二)界面解析
  • sh cmake-linux.sh -- --skip-license --prefix = $MY_INSTALL_DIR
  • leetcode212. 单词搜索 II
  • 上传文件(vue3)
  • 面试题整理9----谈谈对k8s的理解1
  • 在 Sanic 应用中使用内存缓存管理 IP 黑名单
  • uniapp使用echart
  • Litctf-web
  • Docker(二):Docker的基本使用
  • 从0攒一个分布大数据/人工智能/数据库 处理引擎
  • 躺平成长-下一个更新的数据(躺平成长数据显示核心)
  • 【计算机网络 - 基础问题】每日 3 题(六十)
  • Make a Windows service publicly accessible
  • IDEA控制台报错(org.springframework.http.converter.HttpMessageNotWritableException)
  • 信息论与熵information and entropy
  • Linux:线程池
  • ADT和ADT接口
  • 【Fargo】21:rtcp rr 问答
  • 手机玩亚托莉:我挚爱的时光!手机推gal、躺床玩漫改gal教程
  • 龙迅#LT6211适用于HDMI转4PORT LVDS,分辨率高达4K60HZ,可提供技术支持!
  • 【C++刷题】力扣-#561-数组拆分
  • 【Linux刷题练习】
  • 线上3D看车有何优势?
  • Linux 宝塔安装(各操作系统命令合集)
  • Zipkin使用指南分布式追踪核心概念与架构详解
  • vos3000外呼系统通话无法接续怎么解决?