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 ...
随机推荐
- 第3章 Linux常用命令(1)_文件处理命令
1. 文件处理命令 1.1 命令格式:命令 [-option] [arguments],如ls –la /etc (1)个别命令使用不遵循此格式 (2)当有多个选项时,可以写在一起,如以上的-la ( ...
- C#事件学习
通过代码触发事件(第10章).由对象触发的事件(Timer每隔Interval指定时间,就触发Tick事件,第8章使用Timer). 目录: 避免递归事件 访问对象的事件 使用事件参数 创建事件处理程 ...
- Centos7的firewalld配置
红帽官方的使用文档: https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Security_Gu ...
- linux ubuntu14 更改为root用户登录
设置使用root用户登陆首先要修改root的登陆密码sudo passwd root1.输入sudo gedit /usr/share/lightdm/lightdm.conf.d/50-ubuntu ...
- 基于jquery的has()方法以及与find()方法以及filter()方法的区别详解
has(selector选择器或DOM元素) 将匹配元素集合根据选择器或DOM元素为条件,检索该条件在每个元素的后代中是否存在,将符合条件的的元素构成新的结果集. 下面举一个例子: <ul& ...
- 仿原生app,native特效
为解决手机端wap项目中页面跳转响应慢的问题,基于jquery开发了fr.routeApp.js,使得wap项目拥有原生app的流畅,跳转时亦有native的特效 html部分 <!--定义容器 ...
- Using Internal EEPROM of PIC Microcontroller
There are commonly three types of memories in a PIC Microcontroller, Flash Program Memory, Data Memo ...
- java collection.sort()根据时间排序list
首先:定义bean 然后:定义比较器 最后:测试使用 一.userBean package com.butterfly.Class; public class user { private Strin ...
- 10 行 Python 代码写的模糊查询
导语: 模糊匹配可以算是现代编辑器(在选择要打开的文件时)的一个必备特性了,它所做的就是根据用户输入的部分内容,猜测用户想要的文件名,并提供一个推荐列表供用户选择. 样例如下: Vim (Ctrl-P ...
- springmvc请求接收参数的几种方法
一.通过@PathVariable获取路径中的参数 @RequestMapping(value="user/{id}/{name}",method=RequestMethod.GE ...