进制

一种计数的方式.侧重点在于计数的时候是逢多少进一.

1)      C语言可以识别的进制

二进制

每一位. 0 0 1 0 0 1 1 0 1 0 1 0 0 1 0 1 1 0

在C语言中,写一个二进制的数的方式就是在前面加一个 0b或者0B的前缀,二进制每一位是0或者1,逢2进1;

2. 八进制

每一位. 0 1 2 3 4 5 6 7 10 11

在C语言中,写一个八进制的数的方式就是在前面加一个 0的前缀,逢8进1;

%o    将整型变量中得数据以八进制的形式输出

3. 十进制

每一位. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14

在C语言中直接写1个整数,那么默认就是十进制,逢10进1;

%d    将整型变量中得数据以十进制的形式输出

4. 十六进制

每一位. 0 1 2 3 4 5 6 7 8 9 a b c d e f 10 11 12

在C语言中,写一个十六进制的数的方式就是在前面加一个 0x或者0X的前缀,逢16进1;

%x    将整型变量中得数据以八进制的形式输出

2).进制之间的转换

a. 基本概念

数码: 指的是这个数据的每一位的数字.

数位: 数码在这个数中的位置.从右到左.依次递增从 0 开始.

基数: 就是每一个数码可以有多少个数据来表示.

(基数其实指的就是这个数的进制).

位权: 数码乘以(基数的数位次方)

任何数的0次方都为1.

b. 十进制转换为二进制

除2取余法. 将这个数除以2. 直到商为1或者0. 然后最后1个商和所有余数倒序. 就是这个十进制对应的二进制.

例:

10 的二进制是 1010

178 的二进制是10110010

c. 二进制转换为十进制

加权法:将这个二进制数的每个数码的位权相加,就是这个二进制对应的十进制.

10101  每1个数码的位权相加.

第0位的位权: 1 * 2的0次方    1

1      *                    0

2      *                    4

3      *                    0

4        *                  16

d.      十进制转换为八进制

除8取余(与十进制转换为二进制方法类似)

e.      八进制转换为十进制

加权法:将八进制的每1个数码的位权相加 得到的就是其对应的十进制数.

0342

第0位: 2 * 8的0次方  2

1     4 * 8的1      32

2     3 * 8的2     192

f. 二进制转换为八进制.

三合一法则:将这个二进制从低位到高位每三位分成1组.高位不够补0将每1组转换为十进制.最后将每1组的十进制连起来. 就是这个二进制对应的八进制.

001 011 100 110 011

1    3   4    6   3

g. 八进制转换为二进制.

一拆三:将这个八进制数的没1个数码拆为1个三位的二进制数.把这些二进制数连起来.

134674

001 011 100 110 111 100

h. 二进制转换为十六进制.

四合一法则:将这个二进制从低位到高位每四位分成1组.高位不够补0

将每1组转换为对应的十六进制.最后将每1组转换成功的十六进制数链接起来.

11100101010111110111101010101

0001 1100 1010 1011 1110 1111 0101 0101

1    c    a     b     e     f      5    5

k. 十六进制转换为二进制.

一拆四法则:将这个十六进制的书的每1个数码拆为1个四位的二进制数,将其连起来.

4dea761;

0100 1101 1110 1010 0111 0110 0001

c语言程序进制,C语言之进制详解相关推荐

  1. C语言 程序的翻译 预处理 编译 汇编 链接 #define详解

    1.程序的翻译环境和执行环境 执行环境:所在操作系统的平台 win10 win11 linux 翻译环境:MSVC gcc g++ 你的vs 2019 和2022 是集成开发环境把编辑器编译器全部给你 ...

  2. 8255a初始化c语言程序,8255A的c语言程序.doc

    8255A的c语言程序 8255A的c语言程序 [实例24]用8243扩展I/O端口 #include sbit ContrBit0=P1^0; sbit ContrBit1=P1^1; sbit C ...

  3. pythonprint字节按照16进制输出_对python以16进制打印字节数组的方法详解

    对python以16进制打印字节数组的方法详解 一.问题描述 如果直接用print打印bytes的话,有时候会直接显示ascii对应的字符,看起来很蛋疼. 二.运行效果 上面一行是直接用print打印 ...

  4. 电大计算机C语言1253,1253《C语言程序设计》电大期末精彩试题及其问题详解

    1253<C语言程序设计>电大期末精彩试题及其问题详解 (34页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 19.90 积分 实用文档&l ...

  5. 好程序员Java学习路线分享finalize()方法详解

    好程序员Java学习路线分享finalize()方法详解,前言,finalize()是Object的protected方法,子类可以覆盖该方法以实现资源清理工作,GC在回收对象之前调用该方法.. fi ...

  6. php微信小程序物流进度推送,微信小程序 消息推送php服务器验证实例详解

    微信小程序 消息推送php服务器验证实例详解 设置页面("设置">>"开发设置"): 1.设置服务器域名 注意http和https协议的不同. 2. ...

  7. wxss 点击样式_微信小程序点击控件修改样式实例详解

    微信小程序点击控件修改样式实例详解 现在要在微信小程序中实现点击控件修改样式,如下: 微信小程序中不支持直接操作dom,要实现这种效果,我们需要通过设置data,然后利用数据和界面的双向绑定来实现它. ...

  8. 入网许可证_进网许可证、电信设备入网许可证详解!

    原标题:进网许可证.电信设备入网许可证详解! 进网许可证也叫入网许可证.入网许可证是加贴在已获得进网许可的电信设备上的质量标志,由信息产业部统一印制和核发,也是行货手机的真品凭证之一.入网许可证上有水 ...

  9. 微信小程序云开发入门(二)-数据库详解

    微信小程序云开发入门(二)-数据库详解 接上一篇:微信小程序云开发入门(一) 摘要: 因为微信小程序云数据库有点类似传统的关系型数据库,但又有所不同.所以刚入手的时候会有点困扰,经过一段时间的学习和摸 ...

  10. c语言程序链接过程,C语言简明教程(二):C程序编译链接过程和实例对照详解...

    不像高级编程语言,在C语言开发中,了解其编译链接过程显得相对重要,因为C语言是较为底层的语言,很多时候我们调试C程序或者解决其它问题都可能会涉及到C编译链接的相关知识,例如编译动态库或者静态库.下面我 ...

最新文章

  1. 【Android游戏开发十六】Android Gesture之【触摸屏手势识别】操作!
  2. 和AI结对编程!OpenAI与GitHub联手推出AI代码生成工具,比GPT-3更强大
  3. Servlet 的常见错误总结
  4. Oracle 11G安装时遇到了net.bridge.bridge-nf-call-ip6tables错误
  5. 转载:介绍几本专业的书籍,一起学习
  6. DelphiXE4发布了
  7. 剖析360为什么要做路由器
  8. Page_PreRender正好用来做View
  9. C语言关键字必备练习题
  10. 多选题如何做结构方程模型分析?
  11. 2019 高教社杯数模竞赛A题 高压油管的压力控制 题解
  12. 物联网端-云一体化应用管理解决方案
  13. 知到大学生心理健康第二章单元测试
  14. Mac电脑待机长时间离开后自动退出登录和关机的解决方法
  15. Tomcat启动后闪退或一会儿后退出
  16. Vue中对表单的增删改查(不含图片)
  17. 更改UIButton的图片颜色
  18. 最近做了几套工具栏图标
  19. web平台安装程序_Galaxy 生信平台(一):安装
  20. 数据库主键自增到最大值

热门文章

  1. 【ML】EM(期望最大)算法
  2. react 实习小记
  3. BeagleBone Black学习(一)—— 移植和启动
  4. Z-Score归一化方法
  5. matlab实现聚类分析
  6. JSP程序设计实训(一)—— JSP概述
  7. 数字通信系统和模拟通信系统的简单介绍
  8. [附源码]Python计算机毕业设计Django自行车租赁管理系统
  9. 安科瑞无线物联网智能电表ADW300指导性技术要求-Susie 周
  10. SKY77645 导致的Rach failure问题