十进制与二进制的相互转换
一、
1.十进制转换为二进制,分为整数部分和小数部分。
整数部分采用除2倒取余法,具体做法:用2去除十进制整数,可以得到一个商和余数;在用2去除商,又会得到一个商和余数,如此进行,知道商为0时为止,然后把先的到的余数作为二进制的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来。
小数部分采用乘2取整法,具体做法:用2乘十进制小数,可以得到积,将积中的整数部分取出,在用2乘余下的小数部分,又得到一个积,在将积中的整数部分取出,如此进行,直到积中的小数部分为0,此时0或1为二进制的最后一位,或者达到所要求的精度为止,然后把取出的整数部分按顺序排列起来,先取得整数作为二进制小数的最高位有效位,后取的整数作为低位有效位。
2.二进制转换为十进制,方法:按权相加法,即将二进制每位上的数乘以权,然后相加之和即是十进制数。
二、
由于计算机的硬件决定,任何存储于计算机中的数据,其本质都是以二进制码存储。
根据冯·诺依曼提出的经典计算机体系结构框架,一台计算机由运算器、控制器、存储器、输入和输出设备组成。其中运算器只有加法运
算器,没有减法运算器(据说一开始是有的,后来由于减法运算器硬件开销太大,被废了) 。
所以计算机中没办法直接做减法的,它的减法是通过加法实现的。现实世界中所有的减法也可以当成加法的,减去一个数可以看作加上这个数的相反数,但前提是要先有负数的概念,这就是为什么不得不引入一个符号位。符号位在内存中存放的最左边一位,如果该位位0,则说明该数为正;若为1,则说明该数为负。
而且从硬件的角度上看,只有正数加负数才算减法,正数与正数相加,负数与负数相加,其实都可以通过加法器直接相加。
原码、反码、补码的产生过程就是为了解决计算机做减法和引入符号位的问题。
十进制与二进制的相互转换相关推荐
- 编程基础 进制的定义,二进制、十进制、十六进制的相互转换
文章目录 1. 进制的定义 2. 进制的规范 3. 进制的进位运算 3.1 十进制 3.2 二进制 3.3 八进制 3.4 十六进制 3.5 进制表 4. 进制的相互转换 4.1 二进制与十进制的相互 ...
- 二进制,八进制,十进制,十六进制的相互转换【简单易懂】(含代码模板)
目录 二进制转十进制 十进制原理: 二进制转十进制计算: 八.十六进制转十进制 八.十六进制转十进制计算: 十进制转其他进制 十进制转二进制: 十进制转八进制: 十进制转十六进制: 不同进制之间的相互 ...
- 十进制与二进制间的相互转换
1. 二进制转十进制 方法:"按权展开求和" 例: (1011.01)2 =(1×2^3 + 0×2^2 + 1×2^1 + 1×2^0 + 0×2^(-1) + 1×2^(-2) ...
- 总结计算机中十进制数二进制数,计算机中十进制转换为二进制的新方法
计算机,考试必备! 计算机中十进制转换为二进制的另一方法 -------"定位减权法" 胡燏 (四川建筑职业技术学院计算机系,618000) [摘要]本文从十进制与二进制的特点入手 ...
- 十进制转二进制/八进制/十六进制
二进制转十进制 求(10000000 00001011 00000011 00011111)B的十进制数 如下图(分子是二进制数,分目是0-7的取值范围): 首先,我们有一个十进制的数字**(21)D ...
- 计算机中十进制转二进制逻辑原理,.计算机中为什么要采用二进制?及二进制的基本运算规则,还有.二进制数据与十进制、八进制、十六进制数据之间的转换方法?...
满意答案 sqq212527 2013.04.11 采纳率:46% 等级:12 已帮助:10556人 编辑本段简介 20世纪被称作第三次科技革命的重要标志之一的计算机的发明与应用,其运算模式正是 ...
- 计算机常用数制转换说课稿,小学信息说课稿:十进制与二进制的转换
<十进制与二进制的转换>是小学学科中重点内容,也是教师招考中的重点内容.下面的小编将从教材分析.学情分析.教学目标确立.教法与学法及教学设计五个方面的内容进行阐述这篇说课稿: 一.教材分析 ...
- python递归十进制转化二进制_什么是递归?用十进制转二进制的Python函数示例说明...
先上用Python写的十进制转二进制的函数代码: def Dec2Bin(dec): result = '' if dec: result = Dec2Bin(dec//2) return resul ...
- 十进制转换成十六进制c语言 链栈,C语言 链栈 实现十进制转换二进制,八进制,十六进制...
C语言 链栈 实现十进制转换二进制,八进制,十六进制 (3页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 11.90 积分 最后运行结果:代码:#incl ...
最新文章
- 使用 webpack 4 和 Babel 构建 React 应用(2018)
- oracle0raD,在Radhat 5 上安装Oracle 10g(转)
- mysql修改字段 新增字段
- SQL手工注入入门级笔记(更新中)
- php 面向对象基础,PHP 面向对象基础
- Jsonschema2pojo从JSON生成Java类(Maven)
- Java 匿名内部类解析
- Kotlin学习笔记 第四章 Java调用Kotlin
- #pragma once和#ifndef
- NewSQL登堂入室 数据库厂商掘金行业大数据
- [20180801]insert导致死锁.txt
- 易经入门(体系最完整,推荐书目最完备,易经周易入门必收藏)
- 学习日记day36 平面设计 字体设计
- 400一双的人工肌肉跑鞋,能否扩大鸿星尔克“科技牌”赢面?
- 数学建模优秀论文2(层次分析有关)
- android 手机日志查看工具,日志查看器手机版下载
- 给定一个整型变量a,写两段代码,第一个设置a的bit 3,第二个清除a 的bit 3。在以上两个操作中,要保持其它位不变。
- 论文阅读-Detecting and Recovering Sequential DeepFake Manipulation(SeqFakeFormer)
- 高项 案例分析重点知识 进度成本质量
- mac多开屏幕_mac如何分屏
热门文章
- 官方指定Jmeter配置JVM堆内存方式
- 逻辑控制电路中门的符号记录(便查)
- IBM软件集团副总裁:三个层面解析IBM云计算
- “导论:王阳明与阳明心学“的观后感
- python中int是什么意思
- 如何使用python和opencv4实现照片长曝光效果呢?
- mysql创建表分区详细介绍及示例
- WLAN无线局域网技术 基础(二)PoE与PoE交换机的功能,二层组网和三层组网的概念与方式,有线组网概念:直连式组网、旁挂式组网,CAPWAP协议
- 浪潮云分布式云ICP加速千行百业羽化创新
- 在苹果路由器中将传统打印机设置成隔空打印