08和8的区别,二进制、八进制、十进制、十六进制。
08和8到底有什么区别呢?
08和8到底有什么区别呢?这句话在前两天测试中念叨了很久很久。
问题起因
就在前两天的测试中啊,用I2c测网卡的Bypass的时候出现,从01、02、03一直到07都是正常的,到了08突然就报错了,09也是报错了,后面10、11、12都是正常的。08和09是换成了8和9才没有报错,当时也没怎么在意这个事,只是有点奇怪08不行8却行呢。
原因所在
直到今天在看资料的时候看到这样一句话:0x或者0X表示十六进制,0表示八进制,这才反应过来原来08是八进制的表示,而八进制里面没有8,所以08就报错了,同理09也是如此,到10的时候就已经悄悄的成十进制了。
这个问题就说明了我已经忘了这个知识点了,都不知道08是八进制的表示,还在那疑惑08和8的区别,以后得注意啊。
什么是整数常量
规范说法是整型常量,就是通常的整数,包括正整数、负整数和0,其数据类型是整型,除此整型常量包括短整型、长整型和无符号型等。
在C语言中,整型常量有三种书写方式:
1.八进制整常数必须以0开头,即以0作为八进制数的前缀,数值取值0~7。以下列举合法的八进制数:015(十进制13) 0101(十进制65) 0177777(十进制数为65535)
以下各数不是合法的八进制数 :222(没有前缀0,是个十进制的数) 0228(包含了非八进制数码,八进制里没有8也没有9)
2.十六进制数前缀为0X或者0x,数值取值是从0~9 A~F a~f 。一下是合法的十六进制数:0x1(十进制1) 0X111(十进制273) 0x1A(十进制数26) 以下是不合法的十六进制数:0x1H(含非十六进制数) 123(没有前缀,是个十进制数)
3.十进制数,就是通常整数的写法。例如:11、22、456等
注意,整型常量前面没有+或者-,-11其实就是一元运算符和操作数10,同样整型常量的十进制表示并没有0,单独写一个0其实就是一个八进制常量。
由于整型常量分为短整型和长整型两种,同时又有十进制、八进制、十六进制三种书写方式,所以在使用整型常量的时候要注意区分。比如:10和10L是不同的整型常量,虽然它们有相同的数值,但是它们在内存中占用不同数量的字节;又比如:10、010、0x10虽然都是短整型常量,但它们表示不同的整数值。
08和8的区别,二进制、八进制、十进制、十六进制。相关推荐
- 二进制 八进制 十进制 十六进制
2->8:从个位开始把二进制数三个一组分组,然后每组分别换成8进制, 例:11,101,100 就是分组后的结果 11->3 101->5 100->4 所以结果是354 8- ...
- python十六进制转换成八进制_Python 进制转换 二进制 八进制 十进制 十六进制
全局定义一定不要丢了 全局定义 base = [str(x) for x in range()] + [ chr(x) for x in range(ord('A'),ord('A')+)] 二进制 ...
- 【笔记】二进制八进制十进制十六进制互转详细教程和范例
最近复习之前的笔记基础.又把进制转换理解了一遍.放在这里以后备查.同时作为分享. 二进制转换八进制十进制十六进制 例: 11010 二进制转换八进制 需要2进制数字为每3位分组的十进制数,不足3位的倍 ...
- 二进制 八进制 十进制 十六进制 之间进制转换(图解篇)
一.本文所涉及的内容(Contents) 目录 一.本文所涉及的内容(Contents) 二.背景(Contexts) 三.进制转换算法(Convert) ( ...
- 计算机系统中常用的进制,计算机中常用 二进制 八进制 十进制 十六进制的特点...
计算机中常用的计数制 用若干数位(由数码表示)的组合去表示一个数,各个数位之间是什么关系,即逢"几"进位,这就是进 位计数制的问题.也就是数制问题.数制,即进位计数制,是人们利用数 ...
- 二进制八进制十进制十六进制及原码反码补码
1.进制的介绍 定义:进位制,人们规定的一种进位方式:表示某一位置上的数,运算时是逢X进一位. 十进制是逢十进一:二进制是逢二进一,八进制是逢八进一: 常见进制:二进制,八进制,十进制,十六进制: 学 ...
- 二进制 八进制 十进制 十六进制的相互转换(精简总结)
之前看到的都是铺垫这术语那术语的,看了半天,还不知道怎么处理.这里就根据各种文章和自己的理解总结一小下下, 不一定准确,省略一些概念等繁琐的陈述,直接上结论 1.二进制转八进制:以小数点为分界线,各 ...
- Java 二进制,八进制,十进制,十六进制
学而时习之,温故而知新 二进制特征: 1 : 有2个数字组合,"0" 和"1" 2 : 运算时逢2进1 例如 101010 八进制的特点: 1: 有 8个数组组 ...
- Java byte[] 字节数组 转 二进制 八进制 十进制 十六进制字符串
[前言] Java中很多时候需要将byte[]转为各种进制的字符串显示,从2,8,10,16到比较高级的base64(编码), 至于什么时候需要这样,当你遇到这样的问题就知道了. [代码] 进制转换比 ...
- c语言实现二进制八进制十进制和十六进制的相互转化
c语言实现二进制八进制十进制和十六进制的相互转化 十进制转其他进制 (该程序以十转二为例) #include<stdio.h> void change(int n)//利用递归将每次的余数 ...
最新文章
- datagenerator解决训练时候内存不足问题
- 正如孙正义的时间机器的理论
- python基础应用_【复习】mysql+python基础应用(20190815)
- 一步一步学Ruby(二十一):文件操作2
- 单例设计模式–内省和最佳实践
- 用css样式画三角形(提示框三角形)
- Linux下grub.cnf详解
- 使用TLS安全的访问Minio服务​​​​​​​
- 人工智能(17)----人工智能视频监控 实用性有待提高
- t420i升级固态硬盘提升_老电脑想升级,如何选购最适合的固态硬盘
- Win10提示未插入扬声器或耳机
- springboot下载excel文件
- 编程实现英文数字到中文大写数字的转换
- i.MX6DL飞思卡尔双核安卓核心板主控
- 海洋重力数据处理步骤
- javascript组合模式创建对象
- [ESP32/ESP8266专题笔记-6] ESP8266开发板-Micropython-WS2812灯的控制
- HTML的mous事件
- lan8742a怎么用_LAN8742A
- QingScan v1.1.0 版本发布会实录