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 ...
随机推荐
- 看php手册2015-03-19版后备注
类与对象->基本概念:1,#############################::class 自 PHP 5.5 起,关键词 class 也可用于类名的解析.使用 ClassName::c ...
- git 中关于LF 和 CRLF 的问题
git 中关于LF 和 CRLF 的转换问题注意: Windows下编辑器设置中,建议调整设置为Unix风格.(具体设置位置各种编辑器上不同,需要找找) 使用Git Bash进行命令行操作时,运行一下 ...
- gdb进程调试,多进程调试
1.单进程的调试 常规的通过gdb cmd这种方式开启调试,特别说明的是通过attach的方法附加到一个指定的进程上去进行调试,这种方法适合于调试一个已经运行的进程,具体用法: gdb -p [pi ...
- JS入门学习,编写一个简易月历
//今天最头疼的地方在于 getElementsByClassName()的 [] ~~ //错了N遍后只能说有点点头绪,如果不加[] 查找的就是全部吧 加上[]能精确控制的标签或者class < ...
- 【2016-10-31】【坚持学习】【Day16】【MongoDB】【入门】
下载,安装: http://www.mongodb.org/downloads 命令行下运行 MongoDB 服务器 为了从命令提示符下运行MongoDB服务器,你必须从MongoDB目录的bin目录 ...
- 用U盘安装Ubuntu系统
用U盘安装Ubuntu,需制作一个Ubuntu的U盘安装盘,最为方便和可靠的制作方法是在Linux系统下使用dd命令,具体如下, sudo dd if=ubuntu-14.04.4-server-am ...
- psutil一个基于python的跨平台系统信息跟踪模块
受益于这个模块的帮助,在这里我推荐一手. https://pythonhosted.org/psutil/#processes psutil是一个基于python的跨平台系统信息监视模块.在pytho ...
- POJ1962Corporative Network[带权并查集]
Corporative Network Time Limit: 3000MS Memory Limit: 30000K Total Submissions: 3945 Accepted: 14 ...
- [bzoj1013][JSOI2008][球形空间产生器sphere] (高斯消元)
Description 有一个球形空间产生器能够在n维空间中产生一个坚硬的球体.现在,你被困在了这个n维球体中,你只知道球 面上n+1个点的坐标,你需要以最快的速度确定这个n维球体的球心坐标,以便于摧 ...
- JavaScript toLowerCase() 方法 把字符串转换为小写
定义和用法 toLowerCase() 方法用于把字符串转换为小写. 语法 stringObject.toLowerCase() 返回值 一个新的字符串,在其中 stringObject 的所有大写字 ...