C语言基础(3)-二进制、八进制、十六进制
1.二进制
一个位只能表示0或者1两种状态,简称bit(比特)
一个字节为8个二进制数,称为8位,简称BYTE(字节)
一个字为2个字节,简称WORD.
两个字为双字,简称DWORD,占32个bit
大写的B代表字节,小写的b代表比特
2.八进制
八进制为以8为基数的数制系统,C语言当中以0开头表示八进制,0666;八进制数为逢八进1,即:
0 1 2 3 4 5 6 7 10 11 12 13 14 15 16 17 20
在C语言中不能直接表达二进制数,但可以表达八进制数,010就是十进制的8,012就是十进制的10。
3.十六进制
十六进制值16为基数的数制系统,在C语言中以0x开头表示十六进制。
4.十进制转二进制、八进制、十六进制的方法
十进制数转化8进制的方法:
用十进制数除以8,分别取商和余数,当商为0的时候,将余数倒着数就是转化后的结果。
十进制数转化16进制的方法:
用十进制数除以16,分别取商和余数,当商为0的时候,将余数倒着数就是转化后的结果。
十进制数转化2进制的方法:
用十进制数除以2,分别取商和余数,当商为0的时候,将余数倒着数就是转化后的结果。
示例:将十进制数的23转换为2进制数
商 余数
2 |___23____ 1
2 |___11____ 1
2 |____5___ 1
2 |____2____ 0
2 |____1____1
0
将余数反转,为10111,即:23
5.其它进制转换
十进制 | 八进制 | 二进制 | 十六进制 |
0 | 0 | 000 | 0 |
1 | 1 | 001 | 1 |
2 | 2 | 010 | 2 |
3 | 3 | 011 | 3 |
4 | 4 | 100 | 4 |
5 | 5 | 101 | 5 |
6 | 6 | 110 | 6 |
7 | 7 | 111 | 7 |
8 | 10 | 1000 | 8 |
9 | 11 | 1001 | 9 |
10 | 12 | 1010 | a |
11 | 13 | 1011 | b |
12 | 14 | 1100 | c |
13 | 15 | 1101 | d |
14 | 16 | 1110 | e |
15 | 17 | 1111 | f |
16 | 20 | 10000 | 10 |
17 | 21 | 10001 | 11 |
二进制转八进制
010 101 111 010 101 111 101 010 101 111 二进制(每三位分割,不足三位补0)
2 5 7 2 5 7 5 2 5 7 八进制
八进制转二进制
032
011 010 即 11010
二进制转十六进制
0111 1100 0001 1011 1111 0111 二进制(每四位分割,不足四位补0)
7 c 1 b f 7 十六进制
即:0x7c1bf7
十六进制转二进制
0x4dafe1 十六进制
0100 1101 1010 1111 1110 0001 二进制
C语言基础(3)-二进制、八进制、十六进制的更多相关文章
- python的进制转换二进制,八进制,十六进制及其原理
#!usr/bin/env python# coding:utf-8def binary(): '''二进制的方法与算法''' Number = 10 Number1 = 20 Nu ...
- java中 二进制 八进制 十六进制 十进制 相互转换 最简方法
package com.swift; import java.util.Scanner; public class Hex2Decimal { public static void main(Stri ...
- Java十进制转成二进制 八进制 十六进制
int a = 357;//十进制转成二进制System.out.println(Integer.toBinaryString(a)); package com.swift; import java. ...
- 二进制&八进制&十六进制之间的快速转换------ 心算&笔算方法总结
二进制数 0&1两种元素: 8进制数 0-7 八种元素: 十六进制数 0-9,a,b,c,d,e, ...
- C语言基础 (4) 原码反码补码与数据类型
1.回顾 使用gcc编译代码 gcc hello.c -o hello windows下编译代码 C语言编译步骤: 预处理(头文件展开,干掉注释) gcc -E hello.c -o hello.i ...
- C语言基础程序设计
1 概论 程序(指令和数据的集合)在运行时,首先会被加载到内存(此时称为进程),然后由CPU通过控制器的译码从内存中读取指令,并按照指令的要求,从存储器中取出数据进行指定的运算和逻辑操作等加工,然后再 ...
- Python 进制转换 二进制 八进制 十进制 十六进制
Python 进制转换 二进制 八进制 十进制 十六进制 作者:方倍工作室 地址:http://www.cnblogs.com/txw1958/p/python3-scale.html 全局定义一定不 ...
- Python进制转换(二进制/八进制/十进制/十六进制)
Python 进制转换 二进制 八进制 十进制 十六进制 作者:方倍工作室 地址:http://www.cnblogs.com/txw1958/p/python3-scale.html 全局定义 ba ...
- 《Java从入门到失业》第一章:计算机基础知识(一):二进制和十六进制
0 前言 最近7年来的高强度工作和不规律的饮食作息,压得我有些喘不过气,身体也陆续报警.2018年下半年的一场病,让我意识到了这个问题的严重性,于是开始强制自己有规律饮食和作息,并辅以健身锻炼,不到2 ...
随机推荐
- 关于windows 7 安装Vim的安装步骤介绍。——Arvin
在Ubuntu中第一次使用VIM编辑器发现好强大,打算在Win7中安装,其中遇到一些小问题,下边介绍详细的安装过程和遇到的问题. 1-安装 首先发现Github中有一款中意的作者,并且他开源的基本插件 ...
- Source Insight常用功能设置
熟悉工具的使用能在一定程度上提高工作效率,但工具永远只是工具,大家要把重点放在内功的修炼上. 符号导航 符号(变量.宏定义.结构定义.枚举.函数等等)在SI 中的检索非常方便.Ctrl+鼠标左键或Ct ...
- css div中内容绝对居中(多行内容)
div中的内容绝对居中(不适合IE6哦,IE6我已经不考虑了),直接看代码吧. <!DOCTYPE HTML> <html> <head> <title> ...
- 【小白的CFD之旅】08 CFD速成之道
学了那么一个星期的流体力学,又看了一周的计算流体力学,小白对于如何应用CFD解决工程流体问题,依然是一无所知.眼看一个月的时间已经过半,小白有点着急起来.于是在一个阳光明媚的早晨,小白又找到了黄师姐. ...
- java设计模式之状态模式
状态模式 允许一个对象在其内部状态改变时改变它的行为,对象看起来似乎修改了它的类. 状态模式UML图 上下文环境(Context):它定义了客户程序需要的接口并维护一个具体状态角色的实例,将与状态相关 ...
- POJ2479 Maximum sum[DP|最大子段和]
Maximum sum Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 39599 Accepted: 12370 Des ...
- android第一行代码-6.自定义控件的实现
0.假设一个应用中标题栏控件都是共用的,如果每个activity都需要设置button,绑定方法,那代码就会很臃肿.那我们可以自定义控件,然后继承这个控件就行了. 自定义控件为TitleLayout, ...
- 关于ipa和apk文件的解压
移动互联网中,主要的两个平台是Android和ios,android上文件的安装包是后缀名为apk的文件,ios上文件的安装包是后缀名为ipa的文件,在本文分析一下这两种文件的特点,以及如何用程序去解 ...
- 【转】【C#】C# 5.0 新特性——Async和Await使异步编程更简单
一.引言 在之前的C#基础知识系列文章中只介绍了从C#1.0到C#4.0中主要的特性,然而.NET 4.5 的推出,对于C#又有了新特性的增加--就是C#5.0中async和await两个关键字,这两 ...
- c#获取下载路径
Request.ApplicationPath 返回/或者iis下目录.如果个人网站是在iis网站下面新建的目录aaa,返回如:/aaa Request.Url.Authority 返回域名和端口 ...