定点数分为定点整数和定点小数
定点整数: 小数点在最低位之后 如 10101.0
定点小数: 小数点在最高位只前 如 0.010101
码制 |
定点整数 |
定点小数 |
原码 |
-(2^(n-1) - 1) ~ +(2^(n-1) - 1) |
-(1 - 2^-(n-1)) ~ +(1 - 2^-(n-1)) |
反码 |
-(2^(n-1) - 1) ~ +(2^(n-1) - 1) |
-(1 - 2^-(n-1)) ~ +(1 - 2^-(n-1)) |
补码 |
-(2^(n-1)) ~ +(2^(n-1) - 1) |
-1 ~ +(1 - 2^-(n-1)) |
移码 |
-(2^(n-1)) ~ +(2^(n-1) - 1) |
-1 ~ +(1 - 2^-(n-1)) |
机器数有无符号数于有符号数之分,有符号数的第一位是符号位。
带符号数的机器数可采用原码,分码,补码,移码四种,统称码制。
1 原码 就是8位二进制数,头一位是符号位。
[+1] = 0 0000001 [-1] = 1 0000001
[+127] = 0 1111111 [-127] = 1 1111111
[+0] = 0 0000000 [-0] = 1 0000000
[+0.5] = 0 <> 1000000 [-0.5] = 1 <> 1000000 // <> 表示小数点
2 反码 正数的反码与原码相同,负数的反码除符号位全部取反
[-1] = 1 1111110 [-127] = 1 0000000
[-0.5] = 1 <> 0111111
[-0] = 1 1111111
3 补码 正数的补码与原码相同,负数的补码是最后一位+1
[-1] = 1 1111111 [-127] = 1 0000001
[-0.5] = 1 <> 1000000
[-0] = 1 0 0000000 = 0 0000000 (把进位去掉) 所以补码的+0和-0是一样的
4 移码 不管正负 将该数的补码符号位取反
[+1] = 1 0000001 [-1] = 0 1111111
[+127] = 1 1111111 [-127] = 0 0000001
[+0.5] = 1 <> 1000000 [-0.5] = 0 <> 1000000
[+-0] = 1 0000000 0的正负移码也是相同
浮点数
浮点数 = 符号位 + 阶位 + 尾数位
参数 |
单精度浮点数 |
双精度浮点数 |
扩展精度浮点数 |
浮点数字长 |
32 |
64 |
80 |
尾数长度 |
23 |
52 |
64 |
符号位 |
1 |
1 |
1 |
指数长度 |
8 |
11 |
15 |
最大指数 |
+127 |
+1023 |
+16383 |
最小指数 |
-126 |
-1022 |
-16382 |
指数偏移量 |
+127 |
+1023 |
+16383 |
实数范围 |
10^-38 ~ 10^38 |
10^-308 ~ 10^308 |
10^-4932 ~ 10^4932 |
例子们在下面
12.5:
1. 整数部分12,二进制为1100; 小数部分0.5, 二进制是.1,先把他们连起来,从第一个1数起取24位(
后面补0):
1100.10000000000000000000
这部分是有效数字。(把小数点前后两部分连起来再取掉头前的1,就是尾数)
2. 把小数点移到第一个1的后面,需要左移3位, 加上偏移量127:127+3=130,二进制是10000010,这是
阶码。
3. -12.5是负数,所以符号位是1。把符号位,阶码和尾数连起来。注意,尾数的第一位总是1,所以规定
不存这一位的1,只取后23位:
1 10000010 10010000000000000000000
把这32位按8位一节整理一下,得:
11000001 01001000 00000000 00000000
就是十六进制的 C1480000.
2.025675
1. 整数部分2,二进制为10; 小数部分0.025675, 二进制是.0000011010010010101001,先把他们连起来
,从第一个1数起取24位(后面补0):
10.0000011010010010101001
这部分是有效数字。把小数点前后两部分连起来再取掉头前的1,就是尾数: 00000011010010010101001
2. 把小数点移到第一个1的后面,左移了1位, 加上偏移量127:127+1=128,二进制是10000000,这是阶
码。
3. 2.025675是正数,所以符号位是0。把符号位,阶码和尾数连起来:
0 10000000 00000011010010010101001
把这32位按8位一节整理一下,得:
01000000 00000001 10100100 10101001
就是十六进制的 4001A4A9.
-1.99744
还需要详细说吗?
如果只有小数部分,那么需要右移小数点. 比如右移3位才能放到第一个1的后面, 阶码就是127-3=124.
补充一个浮点二进制数手工转换成十进制数的例子:
假设浮点二进制数是 1011 1101 0100 0000 0000 0000 0000 0000
按1,8,23位分成三段:
1 01111010 10000000000000000000000
最后一段是尾数。前面加上"1.", 就是 1.10000000000000000000000
下面确定小数点位置。阶码是01111010,加上00000101才是01111111(127),
所以他减去127的偏移量得-5。(或者化成十进制得122,122-127=-5)。
因此尾数1.10(后面的0不写了)是小数点右移5位的结果。要复原它就要左移5位小数点,得0.0000110,
即十进制的0.046875
最后是符号:1代表负数,所以最后的结果是 -0.046875
还要注意其他机器的浮点数表示方法可能与此不同. 不能任意移植.
分享到:
相关推荐
冯诺依曼及其思想 科学家冯诺依曼被计算机界称为"计算机之父",他的存储程序和程序控制原理被誉为计算机史上的一个里程碑。 计算机应用基础之1全文共43页,当前为第3页。 主要思想 1、采用二进制形式表示数据和指令...
1.2.1数制的基本概念 1.2.2数制间的转换 1.2.3计算机内的数据 1.2.4字符的编号 1.2 信息的表示与存储 计算机基础知识全文共45页,当前为第3页。 1946年,世界上第一台电子数字积分式计算机ENIAC(Electronic ...
第1章 计算机科学基础知识 1.1 考试大纲 (1)数制及其转换 二进制、八进制、十进制和十六进制等常用数制及其相互转换 (2)计算机内数据的表示 数的表示 非数值表示(字符和汉字的表示、声音表示、图像表示)...
计算机专业基础是计算机科学与技术学科(一级学科)、计算机技术工程领域硕士生入学考试的专业基础课。考试对象为参加东北大学计算机科学与工程学院2020年全国硕士研究生入学考试的准考考生。 二、考试形式与试卷...
答:数据是对客观事物的符号表示,在计算机科学中是指所有能输入到计算机中并被计算机程序处理的符号的总称。 数据元素是数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理。 数据对象是性质相同的数据...
1. 计算机科学基础(欢迎访问软件考试网www.hbsoft.net) 1.1数制及其转换(欢迎访问软件考试网www.hbsoft.net) 二进制、十进制和十六进制等常用数制及其相互转换(欢迎访问软件考试网www.hbsoft.net) 1.2数据的表示...
第一章 计算机基础知识 1.1 概述 1.1.1 计算机的发展 世界上第一台计算机的诞生: 世界上第一台计算机是由美国宾夕法尼亚大学莫尔学院的物理学家莫克利(John Mauchly)和其它工程技术人员一起,首次使用电子管...
机 计算机特点 运算速度快、运算精度高、具有"记忆"和逻辑判断能力、具有自动控制能力 1.1.5 计算机的应用 科学计算 数据处理 过程控制 计算机辅助系统 人工智能 电子商务 1.2 计算机中的常用数制 1.2.1 进位记数 ...
1.1 计算机概述 1.2 计算机的系统组成 1.3 计算机中数据的表示与存储 1.4 计算机病毒及防治 1.5 多媒体技术 1.6 计算思维 1.7 金山打字通 第1章 计算机基础知识 大学计算机应用基础教程(Windows10-MSOffice2016)-...
第1章 计算机基础知识 1.1.1、计算机的发展简史 1.1.2、计算机的特点与分类 1.1.3、计算机的应用 1.1 计算机的发展与应用 计算机是一种能够按照事先编制好的程序,接收数据、处理数据、存储数据并产生输出的现代化...
计算机科学基础 1.1 数制及其转换 二进制、十进制和十六进制等常用数制及其相互转换 1.2 数据的表示 数的表示(原码、反码、补码表示,整数和实数的机内表示) 非数值表示(字符和汉字表示、声音...
第一章 计算机基础知识 1.1 概述 1.1.1 计算机的发展 世界上第一台计算机的诞生: 世界上第一台计算机是由美国宾夕法尼亚大学莫尔学院的物理学家莫克利(John Mauchly)和其它工程技术人员一起,首次使用电子管...
第一章 计算机基础知识 1.1 概述 1.1.1 计算机的发展 世界上第一台计算机的诞生: 世界上第一台计算机是由美国宾夕法尼亚大学莫尔学院的物理学家莫克利(John Mauchly)和其它工程技术人员一起,首次使用电子管...
第1章 计算机基础知识 学习目标: 通过本章学习使学生掌握计算机基本概念、计算机系统组成、计算机各大硬件设备、 计算机的数制和信息的表示与存储,并熟悉计算机的产生、发展、特点和应用领域,了 解计算机中字符...
期末考试共80个单选题,10个多选题,评分标准:... 1.2 计算机运算基础 1.2.1 数制及其转换 理解二进制、二进制、八进制、十六进制的表示方法及它们之间的相互转化。 1.2.2 数据的存储单位及地址 理解位、字节、字的含
第1章 数据分析概述 数据分析是数学与计算机科学相结合的产物。 数据分析的数学基础在20世纪早期就已确立,但直到计算机的出现才使得实际操作成为可能,并使得数据分析得以推广。 随着互联网的发展和大数据时代的...
《计算机应用基础》 教 案 任教班级:2016秋学期教育 执 教: 2016年下学期 《计算机应用基础》教案 "教学对象 "2016秋学期教育 "课时 "4 " "教学内容 "计算机基础知识 " " "计算机概述 " " "1.2 计算机系统 " ...
第一章 计算机基础知识 自考计算机基础应用-0018全文共9页,当前为第1页。 自考计算机基础应用-0018全文共9页,当前为第1页。 第一节 认识计算机 1.计算机的起源及发展【010101】 人类从记数、计数到计算,经历了...
《计算机应用基础》理实一体化教学 教学设计 《计算机应用基础》理实一体化教学教学设计 "教学对象 " "教学时间 "年 月 日 " "教学内容 "计算机基础知识 " " "计算机概述 " " "1.2 计算机系统 " "教学目的 "使学生...
Visual FoxPuo 程序设计基础 第1章 数据库系统基础知识 数据库基础知识 1.1 数据模型 1.2 数据库系统 1.3 关系数据库 1.4 数据库系统的体系结构与开发工具 1.5 1.1 数据库基础知识 通常,把用计算机对数据进行处理的...