-
2020-10-30 14:59:18
由于十进制第一位数字不是0,因此其他进制的第一位数字应当为0以便和十进制区分
- 二进制数字以0b或0B开头,如0b1111,0B1000;
- 八进制数字以0o或0O或0开头,如0o7654,0O4567,076543;
- 十六进制数字以0x或0X开头,如0xffff,0X9abc;
更多相关内容 -
人们通常用十六进制而不用二进制书写计算机是为什么
2021-04-29 04:59:13人们通常用十六进制而不用二进制书写计算机是因为十六进制的书写比二进制方便;十六进制在数学中是一种逢16进1的进位制,一般用数字0到9和字母A到F表示,其中“A~F”表示“10~15”,这些就称作十六进制数字。推荐:...人们通常用十六进制而不用二进制书写计算机是因为十六进制的书写比二进制方便;十六进制在数学中是一种逢16进1的进位制,一般用数字0到9和字母A到F表示,其中“A~F”表示“10~15”,这些就称作十六进制数字。
推荐:《编程视频》
人们通常用十六进制而不用二进制书写计算机是因为十六进制的书写比二进制方便。
十六进制(简写为hex或下标16)在数学中是一种逢16进1的进位制。一般用数字0到9和字母A到F(或a~f)表示,其中:A~F表示10~15,这些称作十六进制数字。
举例:
例如十进制数57,在二进制写作111001,在16进制写作39。在历史上,中国曾经在重量单位上使用过16进制,比如,规定16两为一斤。如今的16进制则普遍应用在计算机领域,这是因为将4个位元(Bit)化成单独的16进制数字不太困难。1字节可以表示成2个连续的16进制数字。可是,这种混合表示法容易令人混淆,因此需要一些字首、字尾或下标来显示。
二进制(binary)在数学和数字电路中指以2为基数的记数系统,以2为基数代表系统是二进位制的。这一系统中,通常用两个不同的符号0(代表零)和1(代表一)来表示 [1] 。数字电子电路中,逻辑门的实现直接应用了二进制,因此现代的计算机和依赖计算机的设备里都用到二进制。每个数字称为一个比特(Bit,Binary digit的缩写) 。
-
为什么人们通常用十六进制而不是二进制写计算机
2021-06-28 09:00:49人们通常用十六进制而不是二进制写计算机,因为十六进制写比二进制写更方便。数学上,十六进制是每一个十六进制的进位制,一般用数字0 ~ 9和字母A~F表示,其中“A ~ F”表示“10~15”,称为十六进制数。推荐:“编程...人们通常用十六进制而不是二进制写计算机,因为十六进制写比二进制写更方便。数学上,十六进制是每一个十六进制的进位制,一般用数字0 ~ 9和字母A~F表示,其中“A ~ F”表示“10~15”,称为十六进制数。
推荐:“编程视频”
人们通常用十六进制而不是二进制来写计算机,因为用十六进制比二进制更方便。
十六进制(缩写为十六进制或下标16)是数学中每个十六进制1的进位制。一般用数字0-9和字母a-f(或a-f)表示,其中a-f表示10-15,称为十六进制数。
示例:
例如,十进制数57用二进制111001和十六进制39写成。历史上,中国使用十六进制的重量单位,例如,它规定16两是一公斤。如今,十六进制在计算机领域得到了广泛的应用,因为将4位转换成一个十六进制数并不难。1字节可以表示为2个连续的十六进制数字。然而,这种混合表示令人困惑,因此它需要一些前缀、后缀或下标来显示。
二进制是指数学和数字电路中以2为基础的记数系统,也就是说该系统是二进制的。在这个系统中,[1]通常由两个不同的符号表示:0(表示零)和1(表示一)。在数字电子电路中,逻辑门的实现直接使用二进制,所以现代计算机和计算机相关设备使用二进制。每个数字被称为一位(二进制数字的缩写)。这就是为什么人们通常用十六进制而不是二进制来写计算机。更多
-
C语言二进制、八进制、十六进制整数书写和输出
2021-05-18 11:41:44文章目录一、二进制、八进制、十六进制整数的书写1、二进制2、八进制3、十六进制4、需要注意的坑二、二进制、八进制、十六进制整数的输出三、获取视频教程四、版权声明整数是我们生活中常用的数据类型,也是编程中...文章目录
一、二进制、八进制、十六进制整数的书写
1、二进制
2、八进制
3、十六进制
4、需要注意的坑
二、二进制、八进制、十六进制整数的输出
三、获取视频教程
四、版权声明
整数是我们生活中常用的数据类型,也是编程中常用的一种数据,C语言用int关键字来定义整数变量(int 是 integer 的简写)。
在定义变量的时候,可以加signed、unsigned、short和long四种修饰符。
signed:有符号的,可以表示正数和负数。
unsigned:无符号的,只能表示正数,例如数组的下标、人的身高等。
short:短的,现在主流的64位操作系统下,整数占用内存4个字节,使用 4
个字节保存较小的整数绰绰有余,会空闲出两个字节来,这些字节就白白浪费掉了。在C语言被发明的早期,或者在单片机和嵌入式系统中,内存都是非常稀缺的资源,所有的程序都在尽可能节省内存。
long:长的,更长的整数。
一、二进制、八进制、十六进制整数的书写
一个数字默认就是十进制的,表示一个十进制数字不需要任何特殊的格式。但是,表示一个二进制、八进制或者十六进制数字就不一样了,为了和十进制数字区分开来,必须采用某种特殊的写法,具体来说,就是在数字前面加上特定的字符,也就是加前缀。
1、二进制
二进制由 0 和 1 两个数字组成,使用时必须以0b或0B(不区分大小写)开头。
以下是合法的二进制:
int a = 0b101; // 换算成十进制为 5
int b = -0b110010; // 换算成十进制为 -50
int c = 0B100001; // 换算成十进制为 33
以下是非法的二进制:
int m = 101010; // 无前缀 0B,相当于十进制
int n = 0B410; // 4不是有效的二进制数字
请注意,标准的C语言并不支持上面的二进制写法,只是有些编译器自己进行了扩展,才支持二进制数字。换句话说,并不是所有的编译器都支持二进制数字,只有一部分编译器支持,并且跟编译器的版本有关系。
2、八进制
八进制由 0~7 八个数字组成,使用时必须以0开头(注意是数字 0,不是字母 o)。
以下是合法的八进制数:
int a = 015; // 换算成十进制为 13
int b = -0101; // 换算成十进制为 -65
int c = 0177777; // 换算成十进制为 65535
以下是非法的八进制:
int m = 256; // 无前缀 0,相当于十进制
int n = 03A2; // A不是有效的八进制数字
3、十六进制
十六进制由数字 0~9、字母 A~F 或a~f(不区分大小写)组成,使用时必须以0x或0X(不区分大小写)开头。
以下是合法的十六进制:
int a = 0X2A; // 换算成十进制为 42
int b = -0XA0; // 换算成十进制为 -160
int c = 0xffff; // 换算成十进制为 65535
以下是非法的十六进制:
int m = 5A; // 没有前缀 0X,是一个无效数字
int n = 0X3H; // H不是有效的十六进制数字
4、需要注意的坑
在现实生活和工作中,我们在写十进制数的时候,为了对齐或其它原因,在数值前面加0是无关紧要的,但是,在C语言中,不要在十进制数前加0,会被计算机误认为是八进制数。
二、二进制、八进制、十六进制整数的输出
下表是各种进制整数的输出格式。
细心的读者可能会发现,上表中没有二进制的输出格式,虽然部分编译器支持二进制数字的书写,但是却不能使用printf函数输出二进制数。您可以编写函数把其它进制数字转换成二进制数字,并保存在字符串中,然后在printf 函数中使用%s输出。
示例:
/*
* 程序名:book.c,此程序用于演示二进制、八进制、十六进制整数的输出。
* 作者:C语言技术网(www.freecplus.net) 日期:20190525。
*/
#include
int main()
{
int ii=100; // 定义变量ii,赋值十进制的100。
printf("十进制输出结果:%d\n",ii); // 十进制输出结果:100
printf("八进制、无前缀输出结果:%o\n",ii); // 八进制、无前缀输出结果:144
printf("八进制、有前缀输出结果:%#o\n",ii); // 八进制、有前缀输出结果:0144
printf("十六进制、无前缀输出结果:%x\n",ii); // 十六进制、无前缀输出结果:64
printf("十六进制、有前缀(小写)输出结果:%#x\n",ii); // 十六进制、有前缀(小写)输出结果:0x64
printf("十六进制、无前缀输出结果:%X\n",ii); // 十六进制、无前缀输出结果:64
printf("十六进制、有前缀(大写)输出结果:%#X\n",ii); // 十六进制、有前缀(大写)输出结果:0X64
}
三、获取视频教程
百万年薪程序员录制,《C/C++高性能服务开发基础》视频教程已在CSDN学院发布,优惠价12元,地址如下:
https://edu.csdn.net/course/play/29402
四、版权声明
C语言技术网原创文章,转载请说明文章的来源、作者和原文的链接。
来源:C语言技术网(www.freecplus.net)
作者:码农有道
如果这篇文章对您有帮助,请点赞支持,或在您的博客中转发此文,让更多的人可以看到它,谢谢!!!
-
数据结构 十进制和十六进制进制间的相互转换
2022-01-13 13:25:59一、十进制转十六进制 例题: 输入十进制数:654321 输出十六进制数:9FBF1 解题步骤: 十进制数对16取余,因为最终结果是从下往上依次书写,说以我们可以利用栈的特性,先进 的后出;将余数存入栈中依次弹出... -
C语言中的二进制数、八进制数和十六进制数
2021-05-20 03:48:11C语言中的整数除了可以使用十进制,还可以使用二进制、八进制和十六进制。二进制数、八进制数和十六进制数的表示一个数字默认就是十进制的,表示一个十进制数字不需要任何特殊的格式。但是,表示一个二进制、八进制... -
十六进制表示法
2019-12-22 13:44:24一个字节由8位组成。在二进制表示法中,他的值域是00000000₂~11111111₂。如果看成十进制整数,他的值域就是0₁₀~255₁₀。...十六进制(简写为”hex”)使用数字’0’~’9’以及字符以及字符... -
十六进制表示法(进制转换)
2019-03-10 22:30:00本篇文章记录十六进制表示法,以及与十进制、二进制之间的转换方法。十进制的数字表示我们日常生活中一直在使用,在计算机中使用二进制表示法。计算机系统中一个使用字节作为基本的读写单位,一个字节由8位组成。 ... -
二进制、十进制、十六进制理解
2020-10-21 11:23:121.如何理解二进制、十进制、十六进制 点击查看原文 1.1 十进制的理解: 生活中我们遇到的绝大部分数据都是十进制的,比如7、24、30、365等,如果把它们按照个位、十位、百位分解,可以这样表示: 数值 ... -
十六进制的写法
2016-09-14 16:13:50做题目的时候,用到273化为16进制数,脑子一下有点蒙,虽然知道273=162+16+1273 = 16^2+16+1 ,但是很难接受结果为:0x1110x111就是16进制下的273. 纠结了很久才明白,自己理解错误的原因在于:没能理解这三个1,每... -
二进制和十六进制
2018-08-16 08:40:17课程导言 【最早的编程语言是二进制语言,也是计算机能够直接...通过本篇的学习,你将了解到为什么计算机能够直接识别二进制语言,二进制的计数原理以及与十进制、十六进制之间的数值转换。】 在讲述二进制之... -
Python3基础 print %xX 十六进制大小写
2021-01-14 19:45:01Python : 3.7.3 OS : Ubuntu 18.04.2 LTS IDE : pycharm-community-2019.1.3 Conda : 4.7.5 ... 代码的书写要遵守规范,这样有助于沟通和理解。 每种语言都有独特的思想,初学者需要转变思维、踏实践行、坚持积累。 -
BCD码借用十六进制形式表示引出的单片机存储数据,数据数制,数据类型,数据编码分析
2020-03-25 11:06:17单片机存储数据都是二进制...数据数制:二进制、十进制、十六进制等。 数据类型:字符类型(一个字节)、整型(两个字节)、浮点类型(四个字节)。有无符号。 数据编码:8421码,ASCII码,LED等显示字形编码。 ... -
十六进制和八进制的表示
2019-11-06 15:57:463、十六进制数是一种逢十六进一的计数体制,基数是16,用0~9,A~F表示,如0xFF或0XFF。 4、十六进制数以数字0和字母x的组合0x或0X开头。其中字母x是不区分大小写的,即0x与0X等价。 Note: 输出打印八进制数时 %o ... -
十进制、八进制和十六进制,各种进制存在的意义,为什么要设计出来?
2021-01-28 18:02:50一、表示方法 1、八 进制 定义: ...2、十六 进制 定义: 它由 0-9,A-F 组成,字母不区分大小写。与 10 进制的对应关系是: 0-9 对应0-9; A-F 对应 10-15。 N进制的数可以用 0~(N-1) 的数表示,超 -
C语言中的二进制、八进制和十六进制的表示
2020-02-18 17:21:04二进制数、八进制数和十六进制数的表示 一个数字默认就是十进制的,表示一个十进制数字不需要任何特殊的格式。但是,表示一个二进制、八进制或者十六进制数字就不一样了,为了和十进制数字区分开来,必须采用某种... -
八进制,十六进制和浮点数
2020-11-14 09:32:58在c语言中,八进制,十六进制的全称是八进制整数和十六进制整数。所以虽然在数学中存在01.1,0x1.1的写法,但在c语言中是不可以的。(从百度中总结得来)只有整数可以用八进制,十六进制表示,浮点数不可以 但是c99... -
试题 基础练习 十六进制转十进制
2021-01-22 20:52:15试题 基础练习 十六进制转十进制 题目描述 从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出。 注意 十六进制数中的10~15分别用大写的英文字母A、B、C、D、E、F表示。 测试用例 ... -
十进制转换二进制、十六进制
2020-07-16 20:11:13十六进制: 0123456789ABCDEF组成,逢十六进一,书写方式为:0x为开头; 十进制数转换为二进制数的方法: 除2取余法,即每次将整数部分除以2,余数为该位权上的数,而商继续除以2,余数又为上一个位权上的数,这个... -
Python二进制、八进制、十六进制数字的表示和转换
2020-11-20 20:00:01除了常用的十进制表示法,Python 也支持二进制、八进制和十六进制表示法。这些只是表示方法不同,但是它们表示的含义是一样的,如二进制中的 11 和十进制数中的 3 是一样的。1. Python 二进制表示法如十进制中的 100... -
随机生成十六进制颜色值
2020-08-16 17:52:29书写一个函数, 随机生成十六进制颜色值比如:#ff6600 16 进制指0 - f之间的数。 //1.存储 0-f 十六个字符 //2.生成一个随机字符,生成六次 function randomColor() { var arr = ['0', '1', '2', '3', '4', '5... -
二进制,八进制,十进制和十六进制基础和转换
2021-11-11 14:58:59十进制是逢十进一,十六进制是逢十六进一,二进制就是逢二进一,以此类推,x进制就是逢x进位。 一、进制的基本知识 1,十进制 十进制,我们生活中最常用的一种进制。十进制的基数为10,数码由0、1、2、3、4、5... -
二进制与八进制、十进制、十六进制之间的相互转换
2020-02-27 21:41:48计算机中有四种进制方式: ...4、十六进制:十六个符号,由0~9个数字和a-f组成。a表示数字10,b表示数字11,以此类推。一般都是以0x开头。 一、二进制与其他进制之间的转换 (1)二进制转十进制:按权展开求和... -
二进制与十六进制的转换与应用
2020-12-24 15:38:28在说二进制前,先说一下我们常用的十进制:十进制就是逢10进位,十进制是由0、1、2、3、4、5、6、7、8、9这10个基本数字组成。每次在9之后(也就是10)就进一位,我们可以把9先理解成09,10就是在09的9的钱一位进一位... -
Python3基础 二、八、十、十六进制数的定义
2020-11-22 21:31:11# 二进制 bin_num = 0b111 # 八进制 oct_num = 0o011 # 十进制 int_num = 100 # 十六进制 hex_num = 0xf # 输出(十进制) print(bin_num) print(oct_num) print(int_num) print(hex_num) if __name__ == '__main__':... -
C语言中的二进制、八进制、十进制、十六进制的表示
2021-11-11 23:18:35#include <iostream> int main() { //二进制: //由 0 和 1 两个数字组成,使用时必须以0b或0B(不区分大小写)开头 int a1 = 0b11; int a2 = -0b1001;...//无前缀0b或者0B,是一个十进制...