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 ...
随机推荐
- mac 安装mysql + 修改root用户密码 + 及报Access denied for user 'root'@'localhost' (using password:YES)解决办法
1.下载MySQL 到mysql的官网http://dev.mysql.com/downloads/mysql/然后在页面中会看到“MySQL Community Server”下方有一个“downl ...
- [百度经验]window下连接mysql 错误代码 1045
连接mysql时出现错误代码 1045 Access denied for user 'root'@'localhost' (using password:YES) 百度经验:jingyan.baid ...
- AngularJS笔记--自定义指令
在前端开发中, 我们会遇到很多地方都会用到同一种类型的控件.AngularJS提供了自定义指令功能,我们可以在指令里面定义特定的html模板.提供给前台html调用. 一. 指令的简单定义. 下面定 ...
- sql 入门经典(第五版) Ryan Stephens 学习笔记 后续——存储引擎
一.引擎基础 1 查看系统支持的存储引擎 show engines; 2 查看表使用的存储引擎两种方法: a.show table status from database_name where na ...
- HTML ------ 关于表单 Form
Form(表单)主要用于采集和提交用户输入的信息,是页面与WEB服务器交互过程中 最重要的信息来源. 掌握表单(Form)有以下几个要点: 重要form属性 form常用控件 form提交方式 § 重 ...
- 使用Struts2实现数据校验
使用Struts2实现数据校验 为什么需要数据校验呢?答案很简单,假如当你登录想要京东,这时就需要数据校验了如果不输入用户名的话,那么就不会登陆成功,并且会提示出"请输入用户名"的 ...
- 嵌入式Linux驱动学习之路(十七)驱动程序分层分离概念-平台设备驱动
平台设备驱动: 包含BUS(总线).DEVICE.DRIVER. DEVICE:硬件相关的代码 DRIVER:比较稳定的代码 BUS有一个driver链表和device链表. ①把device放入bu ...
- nginx下目录浏览及其验证功能配置记录
工作中常常有写不能有网页下载东西的需求,在Apache下搭建完成后直接导入文件即可达到下载/显示文件的效果;而Nginx的目录列表功能默认是关闭的,如果需要打开Nginx的目录列表功能,需要手动配置, ...
- .gitignore详解
今天讲讲Git中非常重要的一个文件――.gitignore. https://git-scm.com/docs/gitignore 首先要强调一点,这个文件的完整文件名就是“.gitignore”,注 ...
- Spring.net使用说明
使用方法: 1.在配置文件设置Spring.net 节点 在配置节中,声明Spring.net,配置 context,objects 标签,来源(type) <!--配置节:主要用来 配置 a ...