文档库 最新最全的文档下载
当前位置:文档库 › 计算机中的原码、反码和补码

计算机中的原码、反码和补码

计算机中的原码、反码和补码
计算机中的原码、反码和补码

大家都知道数据在计算机中都是按字节来储存了,1个字节等于8位(1Byte=8bit),而计算机只能识别0和1这两个数,所以根据排列,1个字节能代表256种不同的信息,即28(0和1两种可能,8位排列),比如定义一个字节大小的无符号整数(unsigned char),那么它能表示的是0~255(0~ 28-1)这些数,一共是256个数,因为,前面说了,一个字节只能表示256种不同的信息。别停下,还是一个字节的无符号整数,我们来进一步剖析它,0是这些数中最小的一个,我们先假设它在计算机内部就用8位二进制表示为00000000(从理论上来说也可以表示成其他不同的二进制码,只要这256个数每个数对应的二进制码都不相同就可以了),再假设1表示为00000001,2表示为00000010,3表示为00000011,依次类推,那么最大的那个数255在8位二进制中就表示为最大的数11111111,然后,我们把这些二进制码换算成十进制看看,会发现刚好和我们假设的数是相同的,而事实上,在计算机中,无符号的整数就是按这个原理来储存的,所以告诉你一个无符号的整数的二进制码,你就可以知道这个数是多少,而且知道在计算机中,这个数本身就是以这个二进制码来储存的。比如我给你一个2个字节大小的二进制码,首先声明它表示的是无符号的整数:00000000 00000010,我们把前面的0省略,换算一下,它表示的也是数值2,和前面不同的是,它占了2个字节的内存。不同的类型占的内存空间不同,如在我的电脑中char是1个字节,int是4个字节,long是8个字节(你的可能不同,这取决于不同的计算机设置),它们的不同之处仅仅是内存大的能表示的不同的信息多些,也就是能表示的数范围更大些(unsigned int能表示的范围是0~28*4-1),至于怎么算,其实都是一样的,直接把二进制与十进制相互转换,二进制就是它在计算机中的样子,十进制就是我们所表示的数(误解:不同的计算机储存的原理

是不同的,取决于商家的喜好呢)。无符号的整数根本就没有原码、反码和补码。

只有有符号的整数才有原码、反码和补码的!其他的类型一概没有。虽然我们也可以用二进制中最小的数去对应最小的负数,最大的也相对应,但是那样不科学,下面来说说科学的方法。还是说一个字节的整数,不过这次是有符号的啦,1个字节它不管怎么样还是只能表示256个数,因为有符号所以我们就把它表示成范围:-128-127。它在计算机中是怎么储存的呢?可以这样理解,用最高位表示符号位,如果是0表示正数,如果是1表示负数,剩下的7位用来储存数的绝对值的话,能表示27个数的绝对值,再考虑正负两种情况,27*2还是256个数。首先定义0在计算机中储存为00000000,对于正数我们依然可以像无符号数那样换算,从00000001到01111111依次表示1到127。那么这些数对应的二进制码就是这些数的原码。到这里很多人就会想,那负数是不是从10000001到11111111依次表示-1到-12 7,那你发现没有,如果这样的话那么一共就只有255个数了,因为10000000的情况没有考虑在内。实

际上,10000000在计算机中表示最小的负整数,就是这里的-128,而且实际上并不是从10000001到11111111依次表示-1到-127,而是刚好相反的,从10000001到11111111依次表示-127到-1。负整数在计算机中是以补码形式储存的,补码是怎么样表示的呢,这里还要引入另一个概念——反码,所谓反码就是把负数的原码(负数的原码和和它的绝对值所对应的原码相同,简单的说就是绝对值相同的数原码相同)各个位按位取反,是1就换成0,是0就换成1,如-1的原码是00000001,和1的原码相同,那么-1的反码就是11111110,而补码就是在反码的基础上加1,即-1的补码是11111110+1=1 1111111,因此我们可以算出-1在计算机中是按11111111储存的。总结一下,计算机储存有符号的整数时,是用该整数的补码进行储存的,0的原码、补码都是0,正数的原码、补码可以特殊理解为相同,负数的补码是它的反码加1。下面再多举几个例子,来帮助大家理解!

十进制→二进制(怎么算?要是不知道看计算机基础的书去)

47→101111

有符号的整数原码反码补码

47001011110010111100101111(正数补码和原码、反码相同,不能从字面理解)-47101011111101000011010001(负数补码是在反码上加1,符号位不参与运算)

再举个例子,学C语言的同学应该做过这道题:

把-1以无符号的类型输出,得什么结果?(程序如下)

#include

void main()

{

short int n=-1;

cout<<(unsigned short int)n<

}

首先在我的电脑中short int类型的储存空间是2个字节,你的可能不同,我说过,这取决于你的计

算机配置。它能储存28*2=65536个不同的数据信息,如果是无符号那么它的范围是0~65535(0~21 6-1),如果是有符号,那么它的范围是-32768~32767(-215~215-1)。这道题目中,开始n是一个有符号的短整型变量,我们给它赋值为-1,根据我们前面所说的,它在计算机中是以补码11111111 111 11111储存的,注意前面说了是2个字节。如果把它强制为无符号的短整型输出的话,那么我们就把刚才的二进制把看成无符号的整型在计算机中储存的形式,对待无符号的整型就没有什么原码、反码和补码的概念了,直接把11111111 11111111转化成十进制就是65535,其实我们一看都是一就知道它是范围中最大的一个数了。呵呵,就这么简单。你个把上面的源代码编译运行看看,如果你的电脑short int也是两个字节,那就会和我得一样的结果。你可以先用这个语句看看:cout<<看看你的电脑里的短整型占多少的储存空间,也可以用sizeof来看其它任何类型所分配的储存空间。

最后提醒一句,关于数据如何在计算机中储存的,这里只适用于整型的数据,对于浮点型的是另一种方式,这里我们暂时就不深究了。

FeedBack:

1.为什么使用补码形式:

其实计算机中的数值用补码来表示,一是为了防止0有2个编码,其次就是为了把减法运算用加法运算表示出来,以达到简化电路的作用。具体内容请参看一些专业书籍,比如华中科技大出版的《逻辑设计》(呵呵,我大二的课本)。

为什么用补码表示有符号整数。比如8位整数表示的范围是-128~127,而不是-127~128呢?想过没有,为什么二进制10000000在原码和反码中表示0,在补码中它不表示0,保证了0表示的唯一性,但是它为什么表示负数,而不是整数,你也许会说,因为它符号位是1呀,表示负数呀,对,继续,+128我们用补码怎么表示,包括符号位,表示为010000000,超过了2个字节,如果截取低8位,那么是1 0000000,最高位(符号位)是1,表示的是一个负数,我们再看看-128的机器码是多少,原码11000 0000,反码101111111,补码110000000,截取低8位即10000000,表示的是一个负数。

其实呀,这些总结出来的东西都是玩巧,也并不是说非要这样实现,学了计算机逻辑原理,就知道,其实这样做是由于物理条件关系。因为运算器里这样做更容易实现计算。

2.

int x=-70;

int y=2;

int z=x>>y

z的值是多少?主要是不明白负数移位该怎么算?

在C语言中int 是两个字节所以70在计算机中表示为0000 0000 0100 0110

-70用补码表示即1111 1111 1011 1010

右移2位C语言中采用的是算术右移

所以补进位和原符号位相同即1111 1111 1110 1110

取反加一求它的相反数0000 0000 0001 0010 等于17

所以右移后的结果是-17

有个规则如果左移1位相当于乘以2 右移1位相当于除以2 取整

我们验证一下用-70除以2*2 结果取整正好是我们推算的-17

在C++中int 是四个字节但是结果也是一样的原因自己可以推算一下

3. 在8位运算中65-15具体怎么通过补码计算啊~~~

15的原码是0000 1111 补码也是0000 1111

因为是正数符号位(最高位)为0

-15的原码是1000 1111(←注意这个地方你弄错了)符号为为1表示负

反码就是1111 0000(注意原码反码补码之间转换的时候千万不要把符号位考虑进去) 补码就是1111 0001

如果你已经求出了15的补码这里有个简便的方法求-15的补码:

直接把15的补码包含符号位一起求反即可即

15补码1111 0001 那么-15的补码0000 1110

补码计算的时候符号位是要直接参与二进制运算了而不是单独考虑

所谓多余8位的进位舍去其实就是比如补码1111 1111再加任意非0数原来这个补码表示的数就会发生溢出(比如加上0000 0001原先符号位1表示负数加后表示正数)

这里也许你觉得没有必要因为本身只能容纳8位多余的当然要舍去

可是你可能不知道如果是反码进行运算的话不是舍去多余进位而是把多余的进位加到最低位称为循环进位

4。补码溢出如何处理

这就要看你处理数据的范围,比如我用8位二进制记录数据。

只能储存-128~127之间的数据,如果超过127或小于-128就会溢出。

比如127+1=-128 就是这个道理

就好象最大值和最小值连成了一个环,超过了循环计算

这样做才使得数据有规律性和周期性

为了实现这个所以补码是舍掉进位而反码是循环进位前面说过了

解决的办法就是如果8位的数据不过你就用16位的

如果整型不够就用长整型撒实在不行就用浮点型的

真值原码反码补码详解和习题

原码、反码和补码的概念 本节要求 掌握原码、反码、补码的概念 知识精讲 数值型数据的表示按小数点的处理可分为定点数和浮点数;按符号位有原码、反码和补码三种形式的机器数。 一.计算机中数据的表示方法 1、数的定点与浮点表示 在计算机内部,通常用两种方法来表示带小数点的数,即所谓的定点数和浮点数。 ①定点数:是小数点在数中的位置是固定不变的数,数的最高位为符号位,小数点可在符号位之后,也可在数的末尾,小数点本身不需要表示出来,它是隐含的。 缺点:只有纯小数或整数才能用定点数表示; ②浮点数:小数点在数中的位置是浮动的、不固定的数。 一般浮点数既有整数部分又有小数部分,通常对于任何一个二进行制数N,总可以表示成:N=±2P×S N、P、S均为二进制数, P为N的阶码,一般为定点整数,常用补码表示,阶码指明小数点在数据中的位置,它决定浮点的表示范围 S为N的尾数,一般为定点小数,常用补码或原码表示,尾数部分给出了浮点数的有效数字位数,它决定了浮点数的精度,且规格化浮点数0.5≤|S|<1; 0.1B=( 1/2 )D =( 2-1)D 0.11B=(1/2 + 1/4 )D =( 2-1+2-2)D 0.111B=(1/2 + 1/4 + 1/8 )D =( 2-1+2-2+2-3)D --------------------------- 在计算机中表示一个浮点数其结构为: 假设用八个二进制位来表示一个浮点数,且阶码部分占4位,其中阶符占一位;尾数部分占4位,尾符也占一位。 若现有一个二进制数N=(101100)2可表示为:2110×0.1011,则该数在机器内的表示形式为:101100B= 10110B * (21)D 101100B= 1011B * (22)D 101100B= 101.1B * (23)D 101100B= 10.11B * (24)D 101100B= 1.011B * (25)D 101100B= 0.1011B * (26110 一个浮点形式的尾数S若满足0.5≤|S|<1,且尾数的最高位数为1,无无效的0,则该浮点数称为规格化数;规格化数可以提高运算的精度。 S为原码表示,则S1=1 规格化数 S为补码表示N为正数,则S1 =1 N为负数,则S1=0

计算机原理作业1key

09-10计算机原理作业1 1、选择题 ⑴相对于原码和反码,补码编码的特点是() A.便于转换B.便于表示负数C.便于加减法运算D.便于乘除法运算 ⑵常用的英文字符编码有() A.内码B.补码C.ASCⅡ码D.BCD码 ⑶在8421码表示的二—十进制数中,代码1001表示( ) A.3 B.6 C.9 D.1 ⑷完整的计算机系统应包括( )。 A.运算器、存储器、控制器 B.外部设备和主机 C.主机和实用程序 D.配套的硬件设备和软件系统 ⑸冯诺依曼机工作的基本特点是()。 A多指令流但数据流B按地址访问按顺序执行C按堆栈操作D存储器按内容选择地址⑹溢出标志OF是反映()。 A.算术运算是否出现进位情况 B.算术运算是否出现借位情况 C.带符号数运算结果是否超过机器能表示的数值范围 D.无符号数运算结果是否超过机器能表示的数值范围 ⑺4位无符号二进制数表示的数的范围是( )。 A.0~9999 B.0~9 C.0~15 D.0~99 ⑻十进制数38的8位二进制补码是() 。 A.0011001B.10100110 C.10011001D.00100110 ⑼十进制数-38的8位二进制补码是() 。 A.01011011B.11011010 C.11011011D.01011010 ⑽有一个8位二进制数的补码是11111101,其相应的十进制真值是()。 A.-3B.-2C.509D.253 ⑾十进制数-75用二进制数10110101表示,其表示方式是() 。 A.原码B.补码C.反码D.ASCII码

⑿已知[X]原=10011010B,[Y]原=11101011B,则[X-Y]补=() 。 A.溢出B.01111011BC.10000101BD.01010001B⒀构成微机的主要部件除CPU、系统总线、I/O接口外,还有() 。 A.CRTB.键盘 C.磁盘D.内存(ROM和RAM) ⒁计算机中常用的BCD码是() 。 A.二进制数B.十六进制数 C.二进制编码的十进制数D.不带符号数的二进制形式 ⒂10001010是()。 A.带符号数B.原码、反码、补码表示的带符号数 C.不带符号数D.BCD码 E.无法确定 (以下问题参考讲义相关内容) 2、填空题 ⑴十六进制数F27H用二进制数可表示为____________。 ⑵8位二进制补码整数能表示的最小数值是____________。 ⑶二进制数1010.1B的十进制数表示为________。 ⑷十制数131.5的八进制数表示为________。 ⑸RISC表示 _____________,CISC表示___________。 ⑹字符12在16位计算机中可以表示为_3132H___________。 ⑺计算机字长是16位的,-32768D的原码是_不存在_;反码是_不存在_;补码是_8000H__。 3、简答题 ⑴已知[X]补=11000000B,[Y]补=01001000B,[Z]补=00110010B。求[-X]补,[-Y]补,[-Z]补;并计算[X-Y]补和[X-Z]补,若有溢出请给以说明。 ⑵什么是字节?什么是计算机的字长? ⑶所谓4位、8位、16位、32位微处理器是按什么划分的? ⑷计算机的硬件和软件各由哪几部分组成?

进制转换及原码反码补码练习题

进制转换练习题 【例题1-1】十进制数1000对应二进制数为______,对应十六进制数为______。 供选择的答案 A:①1111101010 ②1111101000 ③1111101100 ④1111101110 B:①3C8 ②3D8 ③3E8 ④3F8 【例题1-2】十进制小数为0.96875对应的二进制数为______,对应的十六进制数为______。 供选择的答案 A:①0.11111 ②0.111101 ③0.111111 ④ 0.1111111 B:①0.FC ②0.F8 ③0.F2 ④0.F1 【例题1-3】二进制的1000001相当十进制的______,二进制的100.001可以表示为______。 供选择的答案 A:①62 ②63 ③64 ④65 B:①23+2–3②22+2–2③23+2–2④22+2–3 【例题1-4】十进制的100相当于二进制______,十进制的0.110011相当二进制的______。 供选择的答案 A:①1000000 ②1100000 ③1100100 ④1101000 B:①2–1+2–2+2–4+2–5②1–(2–3+2–4) ③1+(–2–3–2–4) ④1–2–3–2–4–2–6 【例题1-5】八进制的100化为十进制为______,十六进制的100化为十进制为______。 供选择的答案 A:①80 ②72 ③64 ④56 B:①160 ②180 ③230 ④256 【例题1-6】在答案群所给出的关系式中正确的为______,在给出的等式中不正确的为______。 供选择的答案 A:①0.1112<0.7510②0.78>0.C16

计算机组成作业老师给的答案

说明高级语言、汇编语言和机器语言的差别及其联系。 答:机器语言由代码“0”、“1”组成,是机器能直接识别的一种语言,也是执行效率最高的一种语言。汇编语言是一种面向机器的一种语言,它用一些特殊的符号表示指令。高级语言是面向用户的语言,接近自然语言,直观、通用,用具体机器无关。 画出计算机硬件组成框图,说明各部件的作用及计算机硬件的主要性能指标。 框图和各部件的作用见教材第9页,主要性能指标:机器字长存储容量运算速度见教材17页。指令和数据都存于存储器中,计算机如何区分它们 答:取指令和取数据所处的机器周期不同:取指周期取出的是指令;执行周期取出的是数据。取指令或数据时地址的来源不同:指令地址来源于程序计数器;数据地址来源于地址形成部件。 第四章 某机字长为32位,其存储容量是64KB,按字编址其寻址范围是多少若主存以字节编址,试画出主存字地址和字节地址的分配情况。 答:按字编址其寻址范围是16K。图略,用低位字节的地址表示字地址和用高位字节地址表示字地址均可,只需标识清楚。 一个容量为16K×32位的存储器,其地址线和数据线的总和是多少当选用下列不同规格的存储芯片时,各需要多少片1K×4位,2K×8位,4K×4位,16K×1位,4K×8位,8K×8位。答:数据线32根,地址线14根,数据线地址线总和46根。选用1K×4位芯片时需要16×8片,选用2K×8位芯片时需要8×4片,选用4K×4位芯片时需要4×8片,选用16K×1位芯片时需要32片,选用4K×8位芯片时需要4×4片,选用8K×8位芯片时需要2×4片。 试比较静态RAM和动态RAM。 答:静态RMA和动态RAM都属于随机存储器,即在程序的执行过程中既可以读出又可以写入信息。但静态RAM靠触发器存储信息,只要电源不掉电,信息就可不丢失;动态RAM靠电容存储电荷原理存储信息,即使电源不掉电,由于电容要放电,信息也会丢失所以需要再生。什么叫刷新为什么要刷新说明刷新有几种方法。 答:动态RMA在2ms内,将所存信息读出再重新写入,这一过程称为刷新,刷新是一行一行进行的,由CPU自动完成。动态RAM靠电容存储电荷原理存储信息,电容上的电荷要放电,为了维持存储的信息,动态RMA在2ms内,需将所存信息读出再重新写入即刷新。刷新方法有三种:集中刷新、分散刷新和异步刷新。 一个8K×8位的动态RAM芯片,其内部结构排列成256×256形式,存取周期为μs。试问采用集中刷新、分散刷新及异步刷新三种方式的刷新间隔各为多少 答:见教材86页和87页。 某8位微型计算机地址码为18位,若使用4K×4位的RAM芯片组成模块板结构的存储器,试问:(1)该机所允许的最大主存空间是多少(2)若每个模块板为32K×8位,共需几个模块板(3)每个模块板内共有几片RAM芯片(4)共有多少片RAM(5)CPU如何选择各模块板 答:(1)地址码为18位的8位机的最大主存空间是256K×8位。(2)共需8个模块板。(3)每个模块板内有16片RAM芯片。(4)共有128片RAM。(5)A0~A11作为4K×4位RAM芯片本身的地址线;A12~A14作为模块板内的片选地址。采用3—8译码器,共8个输出,每个输出选择2片RAM 芯片;A15~A17作为模块板的地址。采用3-8译码器,其每个输出分别选择8个模块板中的某一块。

原码、反码、补码详解

本篇文章讲解了计算机的原码, 反码和补码. 并且进行了深入探求了为何要使用反码和补码, 以及更进一步的论证了为何可以用反码, 补码的加法计算原码的减法. 论证部分如有 不对的地方请各位牛人帮忙指正! 希望本文对大家学习计算机基础有所帮助! 一. 机器数和真值 在学习原码, 反码和补码之前, 需要先了解机器数和真值的概念. 1、机器数 一个数在计算机中的二进制表示形式, 叫做这个数的机器数。机器数是带符号的,在计算机用一个数的最高位存放符号, 正数为0, 负数为1. 比如,十进制中的数+3 ,计算机字长为8位,转换成二进制就是00000011。如果是-3 ,就是10000011 。 那么,这里的00000011 和10000011 就是机器数。 2、真值 因为第一位是符号位,所以机器数的形式值就不等于真正的数值。例如上面的有符号数10000011,其最高位1代表负,其真正数值是-3 而不是形式值131(10000011转换成十进制等于131)。所以,为区别起见,将带符号位的机器数对应的真正数值称为机器数的真值。 例:0000 0001的真值= +000 0001 = +1,1000 0001的真值= –000 0001 = –1 二. 原码, 反码, 补码的基础概念和计算方法. 在探求为何机器要使用补码之前, 让我们先了解原码, 反码和补码的概念.对于一个数, 计算机要使用一定的编码方式进行存储. 原码, 反码, 补码是机器存储一个具体数字的编码 方式. 1. 原码 原码就是符号位加上真值的绝对值, 即用第一位表示符号, 其余位表示值. 比如如果是8位二进制: [+1]原 = 0000 0001 [-1]原 = 1000 0001 第一位是符号位. 因为第一位是符号位, 所以8位二进制数的取值范围就是:

什么是原码反码补码

什么是原码反码补码 1100110011 原 1011001100 反除符号位,按位取反 1011001101 补除符号位,按位取反再加1 正数的原反补是一样的 ◆一个正数的补码和其原码的形式相同。 如果定义了一个整型变量i: int i;/*定义为整型变量*/ i=lO;/*给i赋以整数10*/ 十进制数10的二进制形式为1010,在微机上使用的C编译系统,每一个整型变量在内存中占2个字节。 图2.2(a)是数据存放的示意图。图2.2(b)是数据在内存中实际存放的情况。 图2.2 ◆求负数的补码的方法是:将该数的绝对值的二进制形式,按位取反再加1。 例如求-10的补码:①取-10的绝对值10;②10的绝对值的二进制形式为1010; ③对1010取反得1111111111110101(一个整数占16位);④再加1得1111111111110110,见图2.3。

整数的16位中,最左面的一位是表示符号的,该位为0,表示数值为正;为1 则数值为负。 北桥,南桥是主板上芯片组中最重要的两块了.它们都是总线控制器.他们是总线控制芯片.相对的来讲,北桥要比南桥更加重要.北桥连接系统总线,担负着cpu 访问内存的重任.同时连接这AGP插口,控制PCI总线,割断了系统总线和局部总线,在这一段上速度是最快的.南桥不和CPU连接通常用来作I/O和IDE设备的控制.所以速度比较慢.一般情况下,南桥和北桥中间是PCI总线. 1。南桥和北桥芯片主要区别是什么? 南桥主要是负责IO 北桥用于CPU和内存、显卡、PCI交换数据 2。如何巧妙辨别南桥和北桥芯片? 用功能辨别南桥芯片和北桥芯片: 北桥 它主要负责CPU与内存之间的数据交换,并控制AGP、PCI数据在其内部的传输,是主板性能的主要决定因素。随着芯片的集成度越来越高,它也集成了不少其它功能。如:由于Althon64内部整合了内存控制器;nVidia在其NF3 250、NF4等芯片组中,去掉了南桥,而在北桥中则加入千兆网络、串口硬盘控制等功能。现在主流的北桥芯征的牌子有VIA、NVIDIA及SIS等。 当然这些芯片的好坏并不是由主板生产厂家所决定的,但是主板生产商采取什么样的芯片生产却是直接决定了主板的性能。如:同样是采用VIA的芯片,性能上则有KT600>KT400A>KT333>KT266A等。目前主流的AMD平台上,可选的芯片组有:KT600、NF2、K8T800、NF3等;对于INTEL平台,则有915、865PE、PT880、845PE、848P等。 南桥 南桥芯片主要是负责I/O接口等一些外设接口的控制、IDE设备的控制及附加功能等等。常见的有VIA的8235、8237等;INTEL的有CH4、CH5、CH6等;nVIDIA 的MCP、MCP-T、MCP RAID等。在这部分上,名牌主板与一般的主板并没有很大的差异,但是名牌主板凭着其出色的做工,还是成为不少人的首选。而不排除一部分质量稍差的主板为了在竞争中取得生存,可能会采用功能更强的南桥以求在功能上取胜。 用芯片在主版上的位置辨别南桥芯片和北桥芯片: 北桥芯片就是位于和CPU插槽附近的一块芯片,其上面一般都覆盖了散热片

带符号数的原码、反码与补码分析

一.带符号数的原码、反码与补码 所谓带符号数,其实就是一个二进制数据,它的最高位所代表的是符号,其余位是其“绝对值”。例如0101_0011,这个数据如果是带符号数,那么最高位的0就是代表这个数据为正数,其后的101-0011则代表这个数据的绝对值,为+83D。如果是1101_0011,则代表-83D。 1.1 原码 原码就是按照正数的符号位为0,负数的符号位为1,其他位就是数据的绝对值即可。例如当机器字长为8bit的二进制数时,它的最高位为符号位,因此其余的7bit位数据的绝对值。因此原码所能表示的数据范围是: - (2n-1-1)~+(2n-1-1) 当字长为8bit,则原码能表示的范围就是:-127~+127 例如83的原码就是:0101_0011 当字长为16bit,则原码能表示的范围就是:-32767~+32767 例如-83的原码就是:1000_0000_0101_0011 1.2 反码 对于一个带有符号位的二进制数来说,正数的反码与其原码相同,负数的反码为其原码除符号位外其余各位按位取反。 例如当字长为8bit时,+83D的反码就是:0101_0011,-83D的反码就是1010_1100 负数的反码与原码有很大的差别,一般情况下,反码主要用来当做求二进制数补码的中间形式。反码所表示的数据范围与原码相同: - (2n-1-1)~+(2n-1-1) 1.2 补码 正数的补码与其原码相同,负数的补码为其反码在最低位加1。 例如: X=+101_1011 [X]原码=0101_1011 [X]补码=0101_1011 X=-101_1011 [X]原码=1101_1011 [X]补码=1010_0101 补码表示的范围是: - 2n-1~+(2n-1-1)

原码、反码与补码知识讲解

2.2 原码、反码与补码 在计算机内的数(称之为“机器数”)值有3种表示法:原码、反码和补码。所谓原码就是带正、负号的二进制数,即最高位为符号位,“0”表示正,“1”表示负,其余位表示数值的大小。反码表示法规定:正数的反码与其原码相同;负数的反码是对其原码逐位取反,但符号位除外。补码表示法规定:正数的补码与其原码相同;负数的补码是在其反码的末位加1。由此可见,这三种表示法中,关键是负数的表示方式不一样。 2.2.1 正负数表示、定点数与浮点数 在计算机内,通常把1个二进制数的最高位定义为符号位,用“0”表示正数,“1”表示负数;其余位表示数值。 规定小数点位置固定不变的数称为“定点数”;小数点的位置不固定,可以浮动的数称为“浮点数”。 2.2.2 原码 原码表示法是定点数的一种简单的表示法。用原码表示带符号二进制数时,符号位用0表示正,1表示负;数值位保持不变。原码表示法又称为符号-数值表示法。 1. 小数原码表示法 设有一数为x,则原码表示可记作[x]原(下标表示)。例如,X1= +1010110 ;X2= -1001010 原码表示数的范围与二进制位数有关。设二进制小数X=±0.X1X2…Xm,则小数原码的定义如下: 例如:X=+0.1011时,根据以上公式可得[X]原=0.1011;X=-0.1011时,根据以上公式可得[X]原= 1-(-0.1011)=1.1011=1.1011 当用8位二进制来表示小数原码时,其表示范围为:最大值为0.1111111,其真值约为(0.99)10 ;最小值为1.1111111,其真值约为(-0.99)10。根据定义,小数“0”的原码可以表示成0.0…0或1.0…0。 2. 整数原码表示法 整数原码的定义如下: 例如:X=+1101时,根据以上公式可得[X]原=01101;X=-1101时,根据以上公式可得[X]原=24-(-1101)=10000+1101=11101 当用8位二进制来表示整数原码时,其表示范围为:最大值为01111111,其真值为(127)10 ;最小值为11111111,其真值为(-127)10 。同样,整数“0”的原码也有两种形式,即00…0和10…0。 2.2.3 反码 用反码表示带符号的二进制数时,符号位与原码相同,即用0表示正,用1表示负;数值位与符号位相关,正数反码的数值位和真值的数值位相同;而负数反码的数值位是真值的数值位按位变反。 1. 小数反码表示法 设二进制小数X=±0.x1x2…xm,则其反码定义为: 例如,X=+0.1011时,根据以上公式可得[X]反=0.1011;当X=-0.1011时,根据以上公式可得[X]反=2-2-4+X=10.0000-0.0001-0.1011=1.0100。根据定义,小数“0”的反码有两种表示形式,即0.0…0和1.1…1。 2. 整数反码表示法 设二进制整数X=±Xn-1Xn-2…X0,则其反码定义为: 例如,X=+1001时,根据以上公式可得[X]反= 01001;当X=-1001时,根据以上公式可得[X]反= (25-1)+X= (100000-1)+(-1001)= 11111-1001=10110 同样,整数“0”的反码也有两种形式,即00…0和11…1。

128的二进制有原码反码和补码 (1)

第一次修订 2009-5-6 14:11 --------------------- 1.模的概念(我只讲个例子,具体的可以查数学中的 "同余模") 在日常生活中,有许多化减为加的例子。例如,时钟是逢12进位,12点也可看作0点。 当将时针从10点调整到5点时有以下两种方法: 1.将时针逆时针方向拨5格,相当于做减法: 10-5=5 2.将时针顺时针方向拨7格,相当于做加法:10+(12-5)=12+5=5 (模为 12) 2.模的运用(采用模得到补码) 1.补码的得来:是为了让负数变成能够加的正数,so,负数的补码=模-负数的绝对值 比如:-1 补码:1111 1111(10000 0000 -1得来) 当一个数要减1的时候,可以直接加 1111 1111 2.原码的得来:(负数的原码,直接把对应正数的最高位改为1) 原码能够直观的表示一个负数(能直观的把真值显示出来,如 -1为1000 0001 其中最高位表示符号位,不进行算术计算) 3.总结:补码相加,到第9位才舍弃(模10000 0000) 原码相加,到第8位舍弃(模1000 0000) 反码相加,到第8位舍弃(模1000 0000) 3.原码和补码之间转换: 1.补码=原码减1,再取反(便于理解) 或补码= 反码+1(便于描述和推理) 2.演示:补码=原码减1,再取反 如-1的原码1000 0001-->1000 0000(减1后)-->1111 1111(取反后)补码 3.演示:补码= 反码+1) 如-1的原码 1000 0001-->1111 1110(反码)-->1111 1111(加1)补码 4.重点:(特别是在有进位的时候) 原码和反码的最高位是符号位,不参加算术运算,模为1000 0000(比补码少一个0) 而补码所有位都可以相加,模为10000 0000(最高位不是符号位,补码是通过模减去负数绝对值得到的) 5.推断-128的原码和补码(用补码= 反码+1) 1.关于原码1000 0000,表示的是-0,还是-128呢?(答案是-128而不是-0) 1.先看看原码的概念吧:正数的符号位为0,负数的符号位为1,其它位按照一般的方法来表示数的绝对值 2.0是负数吗?0既不是正数也不是负数,那么它的符号位到底是0还是1呢?(0的符号位为0,不能为1)

计算机原理原码反码补码

. 反码原码计算机原理整数的补码, - ,为围示范个字节的表制进表示没有符号位.一解释一:对于整数来讲其二其二,1]。对于整数来讲00000000-11111111,由此可见一个字节的整数表示范围为[0,255=2^8 - : .先来看一下下面几个定义进制表示中存在一个符号位0. 1:在计算机中,负数以其正值的补码形式表达。正数即在符号位补2:原码:一个整数,按照绝对值大小转换成的二进制数,称为原码。3:反码:将二进制数按位取反,所得的新二进制数称为原二进制数的反码。+1 : 反码4:补码的原码、0计算机储存有符号的整数时,是用该整数的补码进行储存的,由以上可以得到. 。;正数的原码、补码可以特殊理解为相同;负数的补码是它的反码加1补码都是0。范围说[10000000 - 11111111] [0, 2^7 - 1]。负数: 范围正数[00000000 - 01111111] 即=10000000, 01111111,取反-1. 10000000 -1 = 11111111 - 1 = 11111110,取反=00000001 即是明. 因此有一个有符号二进制表示范围是从[-128-127]. 即是-128. 位个字节等于8解释二:大家都知道数据在计算机中都是按字节来储存了,1种个字节能代表2561这两个数,所以根据排列,1(1Byte=8bit),而计算机只能识别0和,比如定义一个字节大小的无符号整数8位排列)和1两种可能,不同的信息,即2^8(0个数,因为,256(0~2^8 -1)这些数,一共是,那么它能表示的是(unsigned char)0~255种不同的信息。别停下,还是一个字节的无符号整数,我256前面说了,一个字节只能表示位二进制8们来进一步剖析它,0是这些数中最小的一个,我们先假设它在计算机内部就用个数每个数25600000000(从理论上来说也可以表示成其他不同的二进制码,只要这表示为表示3表示为00000010,1表示为00000001,2对应的二进制码都不相同就可以了),再假设,111111118位二进制中就表示为最大的数,依次类推,那么最大的那个数255在为00000011而事会发现刚好和我们假设的数是相同的,然后,我们把这些二进制码换算成十进制看看,所以告诉你一个无符号的整数无符号的整数就是按这个原理来储存的,实上,在计算机中,这个数本身就是以这个二而且知道在计算机中,的二进制码,你就可以知道这个数是多少,进制码来储存的。反码和补码只有有符号的整数才有原码、无符号的整数根本就没有原码、反码和补码。最大的其他的类型一概没有。虽然我们也可以用二进制中最小的数去对应最小的负数,的!但是那样不科学,下面来说说科学的方法。还是说一个字节的整数,不过这次是也相对应,个数,因为有符号所以我们就把它表个字节它不管怎么样还是只能表示256有符号的啦,1 用最高位表示符号位,。它在计算机中是怎么储存的呢?可以这样理解,示成范围:-128-127 2^77位用来储存数的绝对值的话,能表示表示正数,如果是1表示负数,剩下的如果是0在计算机中储存为个数。首先定义02^7*2还是256个数的绝对值,再考虑正负两种情况,1依次表示00000001到0111111100000000,对于正数我们依然可以像无符号数那样换算,从。那么这些数对应的二进制码就是这些数的原码。到这里很多人就会想,那负数是不127到,那你发现没有,如果这样的话那么一共就只-127-1到到是从1000000111111111依次表示

计算机组成原理作业讲解1-4章 答案

1.1 概述数字计算机的发展经过了哪几个代?各代的基本特征是什么? 略。 1.2 你学习计算机知识后,准备做哪方面的应用? 略。 1.3 试举一个你所熟悉的计算机应用例子。 略。 1.4 计算机通常有哪些分类方法?你比较了解的有哪些类型的计算机? 略。 1.5 计算机硬件系统的主要指标有哪些? 答:机器字长、存储容量、运算速度、可配置外设等。 答:计算机硬件系统的主要指标有:机器字长、存储容量、运算速度等。 1.6 什么是机器字长?它对计算机性能有哪些影响? 答:指CPU一次能处理的数据位数。它影响着计算机的运算速度,硬件成本、指令系统功能,数据处理精度等。 1.7 什么是存储容量?什么是主存?什么是辅存? 答:存储容量指的是存储器可以存放数据的数量(如字节数)。它包括主存容量和辅存容量。 主存指的是CPU能够通过地址线直接访问的存储器。如内存等。 辅存指的是CPU不能直接访问,必须通过I/O接口和地址变换等方法才能访问的存储器,如硬盘,u盘等。 1.8 根据下列题目的描述,找出最匹配的词或短语,每个词或短语只能使用一次。(1)为个人使用而设计的计算机,通常有图形显示器、键盘和鼠标。 (2)计算机中的核心部件,它执行程序中的指令。它具有加法、测试和控制其他部件的功能。 (3)计算机的一个组成部分,运行态的程序和相关数据置于其中。 (4)处理器中根据程序的指令指示运算器、存储器和I/O设备做什么的部件。 (5)嵌入在其他设备中的计算机,运行设计好的应用程序实现相应功能。 (6)在一个芯片中集成几十万到上百万个晶体管的工艺。 (7)管理计算机中的资源以便程序在其中运行的程序。 (8)将高级语言翻译成机器语言的程序。 (9)将指令从助记符号的形式翻译成二进制码的程序。 (10)计算机硬件与其底层软件的特定连接纽带。 供选择的词或短语: 1、汇编器 2、嵌入式系统 3、中央处理器(CPU) 4、编译器 5、操作系统 6、控制器 7、机器指令 8、台式机或个人计算机 9、主存储器10、VLSI 答:(1)8,(2)3,(3)9,(4)6,(5)2, (6)10,(7)5,(8)4,(9)1,(10)7 计算机系统有哪些部分组成?硬件由哪些构成? 答:计算机系统硬件系统和软件系统组成。 硬件由控制器、存储器、运算器、输入设备和输出设备五大部件构成 1.9 冯·诺伊曼V on Neumann计算机的主要设计思想是什么? 略。 1.10 计算机硬件有哪些部件,各部件的作用是什么?

原码补码和反码的具体定义

原码补码和反码的具体定义 数在计算机中是以二进制形式表示的。 数分为有符号数和无符号数。 原码、反码、补码都是有符号定点数的表示方法。 一个有符号定点数的最高位为符号位,0是正,1是副。以下都以8位整数为例, 原码就是这个数本身的二进制形式。 例如 0000001 就是+1 1000001 就是-1 正数的反码和补码都是和原码相同。 负数的反码是将其原码除符号位之外的各位求反 [-3]反=[10000011]反=11111100 负数的补码是将其原码除符号位之外的各位求反之后在末位再加1。 [-3]补=[10000011]补=11111101 一个数和它的补码是可逆的。

为什么要设立补码呢? 第一是为了能让计算机执行减法: [a-b]补=a补+(-b)补 第二个原因是为了统一正0和负0 正零:00000000 负零:10000000 这两个数其实都是0,但他们的原码却有不同的表示。 但是他们的补码是一样的,都是00000000 特别注意,如果+1之后有进位的,要一直往前进位,包括符号位!(这和反码是不同的!) [10000000]补 =[10000000]反+1 =11111111+1 =(1)00000000 =00000000(最高位溢出了,符号位变成了0) 有人会问 10000000这个补码表示的哪个数的补码呢? 其实这是一个规定,这个数表示的是-128

所以n位补码能表示的范围是 -2^(n-1)到2^(n-1)-1 比n位原码能表示的数多一个 又例: 1011 原码:01011 反码:01011 //正数时,反码=原码 补码:01011 //正数时,补码=原码 -1011 原码:11011 反码:10100 //负数时,反码为原码取反 补码:10101 //负数时,补码为原码取反+1 0.1101 原码:0.1101 反码:0.1101 //正数时,反码=原码 补码:0.1101 //正数时,补码=原码 -0.1101 原码:1.1101

计算机基础第1次作业

题号:1 题型:单选题(请在以下几个选项中选择唯一正确答案)本题分数:2 有这样一个8位编码,如果把它看作原码它代表十进制整数-1,如果把它看作补码它代表十进制整数-127,这个8位编码是( ). A、10000001 B、11111111 C、00000001 D、01111111 学员答案:a 说明: 本题得分:2 题号:2 题型:单选题(请在以下几个选项中选择唯一正确答案)本题分数:2 使用8个二进制位来表示整数的编码时,十进制整数-88对应的原码和补码分别是( ). A、11011000和10100111 B、 01011000和10101000 C、 11011001和10100111 D、 11011000和10101000 学员答案:d 说明: 本题得分:2 题号:3 题型:单选题(请在以下几个选项中选择唯一正确答案)本题分数:2 用8位补码表示有符号整数时,十进制整数-128的补码用十六进制表示是( ). A、FFH B、80H C、A0H D、7FH 学员答案:b 说明: 本题得分:2 题号:4 题型:单选题(请在以下几个选项中选择唯一正确答案)本题分数:2 一个8位补码由3个“1”和5个“0”组成,则可表示的最大整数为(). A、112 B、128 C、14 D、7 学员答案:a 说明: 本题得分:2 题号:5 题型:单选题(请在以下几个选项中选择唯一正确答案)本题分数:2 大多数计算机采用ASCII码作为字符编码,ASCII码是指(). A、二进制编码的十进制交换码 B、美国信息交换标准代码 C、国标汉字信息编码 D、统一码 学员答案:b

说明: 本题得分:2 题号:6 题型:单选题(请在以下几个选项中选择唯一正确答案)本题分数:2 存储容量为1MB的存储器中能存储的最大数据量是( )字节. A、1048576 B、1000000 C、1024 D、1000 学员答案:a 说明: 本题得分:2 题号:7 题型:单选题(请在以下几个选项中选择唯一正确答案)本题分数:2 已知X的补码为10011000,则它的原码是( ). A、01101000 B、 01100111 C、 10011000 D、 11101000 学员答案:d 说明: 本题得分:2 题号:8 题型:单选题(请在以下几个选项中选择唯一正确答案)本题分数:2 扩展人类感觉器官功能的信息技术不包括(). A、感知技术 B、识别技术 C、获取技术 D、计算技术 学员答案:d 说明: 本题得分:2 题号:9 题型:单选题(请在以下几个选项中选择唯一正确答案)本题分数:2 计算与存储技术扩展了人的( )功能. A、眼耳鼻舌身 B、大脑 C、神经网络 D、手脚 学员答案:b 说明: 本题得分:2 题号:10 题型:单选题(请在以下几个选项中选择唯一正确答案)本题分数:2 以下IC卡中用作电子钱包的是( ). A、身份证 B、考勤卡 C、手机SIM卡 D、校园卡

原码反码补码及运算

原码,反码,补码及运算 一、定义 1.原码 正数的符号位为0,负数的符号位为1,其它位按照一般的方法来表示数的绝对值。用这样的表示方法得到的就是数的原码。 【例2.13】当机器字长为8位二进制数时: X=+1011011 [X]原码=01011011 Y=+1011011 [Y]原码=11011011 [+1]原码=00000001 [-1]原码=10000001 [+127]原码=01111111 [-127]原码=11111111 原码表示的整数范围是: -(2n-1-1)~+(2n-1-1),其中n为机器字长。 则:8位二进制原码表示的整数范围是-127~+127 16位二进制原码表示的整数范围是-32767~+32767 2.反码 对于一个带符号的数来说,正数的反码与其原码相同,负数的反码为其原码除符号位以外的各位按位取反。 【例2.14】当机器字长为8位二进制数时: X=+1011011 [X]原码=01011011 [X]反码=01011011 Y=-1011011 [Y]原码=11011011 [Y]反码=10100100 [+1]反码=00000001 [-1]反码=11111110 [+127]反码=01111111 [-127]反码=10000000 负数的反码与负数的原码有很大的区别,反码通常用作求补码过程中的中间形式。反码表示的整数范围与原码相同。 3.补码 正数的补码与其原码相同,负数的补码为其反码在最低位加1。 引入补码以后,计算机中的加减运算都可以统一化为补码的加法运算,其符号位也参与运算。 【例2.15】(1)X=+1011011 (2)Y=-1011011 (1)根据定义有:[X]原码=01011011 [X]补码=01011011 (2)根据定义有:[Y]原码=11011011 [Y]反码=10100100 [Y]补码=10100101 补码表示的整数范围是-2n-1~+(2n-1-1),其中n为机器字长。 则:8位二进制补码表示的整数范围是-128~+127(-128 表示为10000000,无对应的原码和反码)16位二进制补码表示的整数范围是-32768~+32767 当运算结果超出这个范围时,就不能正确表示数了,此时称为溢出。 所以补码的设计目的是: ⑴使符号位能与有效值部分一起参加运算,从而简化运算规则. ⑵使减法运算转换为加法运算,进一步简化计算机中运算器的线路设计 4.补码与真值之间的转换 正数补码的真值等于补码的本身;负数补码转换为其真值时,将负数补码按位求反,末位加1,即可

计算机组成6、9章作业题答案

6.2. 已知X=0.a1a2a3a4a5a6(ai为0或1),讨论下列几种情况时ai各取何值。 (1)X > 1/2;(2)X ≥ 1/8; (3)1/4 ≥ X > 1/16 解:(1)若要X > 1/2,只要a1=1,a2~a6不全为0即可 (a2 or a3 or a4 or a5 or a6 = 1); (2)若要X ≥ 1/8,只要a1~a3不全为0即可 (a1 or a2 or a3 =1),a4~a6可任取0或1; (3)若要1/4 ≥ X > 1/16,只要a1=0,a2可任取0或1; 当a2=0时,若a3=0,则必须a4=1,且a5、a6不全为0(a5 or a6=1; 若a3=1,则a4~a6可任取0或1; 当a2=1时,a3~a6可任取0或1。 6.16.设机器数字长为16位,写出下列各种情况下它能表示的数的范围。设机器数采用一位符号位,答案均用十进制表示。 (1)无符号数; (2)原码表示的定点小数。 (3)补码表示的定点小数。 (4)补码表示的定点整数。 (5)原码表示的定点整数。 (6)浮点数的格式为:阶码6位(含1位阶符),尾数10位(含1位数符)。分别写出其正数和负数的表示范围。 (7)浮点数格式同(6),机器数采用补码规格化形式,分别写出其对应的正数和负数的真值范围。 解:(1)无符号整数:0 —— 216 - 1,即:0—— 65535; 无符号小数:0 —— 1 - 2-16,即:0 —— 0.99998; (2)原码定点小数:-1 + 2-15——1 - 2-15,即:-0.99997 —— 0.99997 (3)补码定点小数:- 1——1 - 2-15,即:-1——0.99997 (4)补码定点整数:-215——215 - 1 ,即:-32768——32767 (5)原码定点整数:-215 + 1——215 - 1,即:-32767——32767 (6)据题意画出该浮点数格式,当阶码和尾数均采用原码,非规格化数表示时: 最大负数= 1,11 111;1.000 000 001 ,即 -2-9?2-31 最小负数= 0,11 111;1.111 111 111,即 -(1-2-9)?231 则负数表示范围为:-(1-2-9)?231 —— -2-9?2-31 最大正数= 0,11 111;0.111 111 111,即(1-2-9)?231 最小正数= 1,11 111;0.000 000 001,即 2-9?2-31 则正数表示范围为:2-9?2-31 ——(1-2-9)?231 (7)当机器数采用补码规格化形式时,若不考虑隐藏位,则 最大负数=1,00 000;1.011 111 111,即 -2-1?2-32 最小负数=0,11 111;1.000 000 000,即 -1?231 则负数表示范围为:-1?231 —— -2-1?2-32 最大正数=0,11 111;0.111 111 111,即(1-2-9)?231 最小正数=1,00 000;0.100 000 000,即 2-1?2-32

(数电知识)原码、反码与补码知识

2.1 原码、反码与补码 在计算机内的数(称之为“机器数”)值有3种表示法:原码、反码和补码。所谓原码就是带正、负号的二进制数,即最高位为符号位,“0”表示正,“1”表示负,其余位表示数值的大小。反码表示法规定:正数的反码与其原码相同;负数的反码是对其原码逐位取反,但符号位除外。补码表示法规定:正数的补码与其原码相同;负数的补码是在其反码的末位加1。由此可见,这三种表示法中,关键是负数的表示方式不一样。 2.2.1 正负数表示、定点数与浮点数 在计算机内,通常把1个二进制数的最高位定义为符号位,用“0”表示正数,“1”表示负数;其余位表示数值。 规定小数点位置固定不变的数称为“定点数”;小数点的位置不固定,可以浮动的数称为“浮点数”。 2.2.2 原码 原码表示法是定点数的一种简单的表示法。用原码表示带符号二进制数时,符号位用0表示正,1表示负;数值位保持不变。原码表示法又称为符号-数值表示法。 1. 小数原码表示法 设有一数为x,则原码表示可记作[x]原(下标表示)。例如,X1= +1010110 ;X2= -1001010 原码表示数的范围与二进制位数有关。设二进制小数X=±0.X1X2…Xm,则小数原码的定义如下: 例如:X=+0.1011时,根据以上公式可得[X]原=0.1011;X=-0.1011时,根据以上公式可得[X]原= 1-(-0.1011)=1.1011=1.1011 当用8位二进制来表示小数原码时,其表示范围为:最大值为0.1111111,其真值约为(0.99)10 ;最小值为1.1111111,其真值约为(-0.99)10。根据定义,小数“0”的原码可以表示成0.0…0或1.0…0。 2. 整数原码表示法 整数原码的定义如下: 例如:X=+1101时,根据以上公式可得[X]原=01101;X=-1101时,根据以上公式可得[X]原=24-(-1101)=10000+1101=11101 当用8位二进制来表示整数原码时,其表示范围为:最大值为01111111,其真值为(127)10 ;最小值为11111111,其真值为(-127)10 。同样,整数“0”的原码也有两种形式,即00…0和10…0。 2.2.3 反码 用反码表示带符号的二进制数时,符号位与原码相同,即用0表示正,用1表示负;数值位与符号位相关,正数反码的数值位和真值的数值位相同;而负数反码的数值位是真值的数值位按位变反。 1. 小数反码表示法 设二进制小数X=±0.x1x2…xm,则其反码定义为: 例如,X=+0.1011时,根据以上公式可得[X]反=0.1011;当X=-0.1011时,根据以上公式可得[X]反=2-2-4+X=10.0000-0.0001-0.1011=1.0100。根据定义,小数“0”的反码有两种表示形式,即0.0…0和1.1…1。 2. 整数反码表示法 设二进制整数X=±Xn-1Xn-2…X0,则其反码定义为: 例如,X=+1001时,根据以上公式可得[X]反= 01001;当X=-1001时,根据以上公式可得[X]反= (25-1)+X= (100000-1)+(-1001)= 11111-1001=10110 同样,整数“0”的反码也有两种形式,即00…0和11…1。

相关文档
相关文档 最新文档