32位浮点数转换为十进制
ieee32位浮点数转换为十进制

ieee32位浮点数转换为十进制摘要:一、背景介绍1.ieee32 位浮点数的概念2.转换为十进制的重要性二、转换方法1.了解32 位浮点数的构成2.转换过程详解3.转换实例三、转换中可能出现的问题1.溢出情况2.舍入误差3.解决方法四、总结1.转换的意义2.适用范围正文:一、背景介绍在计算机科学中,ieee32 位浮点数是一种表示实数的方式,它的表示方法遵循IEEE 754 标准。
在这种表示方法中,一个32 位浮点数可以表示23 位有效数字,它的值可以精确到小数点后15 位。
然而,在很多实际应用中,我们需要将这种浮点数转换为十进制数,以便更好地理解和使用。
二、转换方法1.了解32 位浮点数的构成一个32 位浮点数由三个部分组成:符号位(sign),指数位(exponent)和尾数位(mantissa)。
其中,符号位占1 位,指数位占8 位,尾数位占23 位。
2.转换过程详解首先,我们需要根据符号位确定数的正负。
如果符号位为0,表示正数;如果符号位为1,表示负数。
然后,将指数位和尾数位转换为十进制数。
指数位需要先减去127(即偏移量),然后乘以2 的负7 次方(即缩放因子)。
尾数位则直接乘以2 的负23 次方。
最后,将这三个部分相加,即可得到十进制数。
3.转换实例例如,将32 位浮点数1000.00000001 转换为十进制数:- 符号位为0,表示正数。
- 指数位为10000001(二进制表示),减去127(偏移量),得到723。
- 尾数位为1(二进制表示),乘以2 的负23 次方,得到0.00000001。
- 将这三个部分相加,得到十进制数1000.00000001。
三、转换中可能出现的问题1.溢出情况当指数位大于等于128 时,浮点数将溢出,无法表示为正常的十进制数。
在这种情况下,需要采取特殊的处理方法,如截断或四舍五入。
2.舍入误差由于尾数位只有23 位,因此在转换过程中,可能会产生舍入误差。
32位浮点数转换为十进制

流量计计算机通过485端口以MODBUS协议把内部IEEE32位浮点数传送到DCS的数据经过研究试验,其数据格式如下数据请求依次为:十六进制从站地址:01;读命令:03;数据起始高位地址:0F;数据起始低位地址:A0;(0FA0=4000即地址44001);数据长度高位:00;数据长度低位:28;(0028=40即40个地址);CRC效验码:46,E2数据应答格式:从站地址:01;读命令反馈:03;数据长度:50;第一个地址:69;C0;48;A9;第二个地址:C5;00;48;A2;以下类推,直到最后两位CRC:E8;86第一个地址:69;C0;48;A9是如何换算为346958的呢?流量计发送的是IEEE标准的32位浮点数首先要把69;C0;48;A9进行高低16位交换变成:48;A9;69;C0变为32位二进制数:01001000 10101001 01101001 11000000其中最高位为0,代表是正数接下来的八位:10010001变成十进制是145,根据IEEE规范应减去127得18,这是小数点右移的位数;剩下的23位是纯二进制小数即:0.0101001 01101001 11000000加1后得1.0101001 01101001 11000000小数点右移18位后得10101001 01101001 110.00000变为十进制得346958其它地址的32位浮点数计算方法同上标题:《IEEE754 学习总结》发信人:Vegeta时间:2004-11-11,10:32详细信息:一:前言二:预备知识三:将浮点格式转换成十进制数四:将十进制数转换成浮点格式(real*4)附:IEEE754 Converte 1.0介绍一:前言前不久在分析一个程序的过程中遇到了浮点运算,也就顺便学习了一下浮点数的存放格式(IEEE754标准),此文仅作为总结,其中举了几个典型的例子,如果你想深入了解IEEE754标准,我想本文并不太适合您。
ieee标准的32位浮点数转换为十进制 c语言

ieee标准的32位浮点数转换为十进制 c语言IEEE标准的32位浮点数转换为十进制C语言1. 概述IEEE标准的32位浮点数,也称为单精度浮点数,是一种在计算机中用于存储和处理小数的数据类型。
它采用了IEEE 754标准,使用1个符号位、8个指数位和23个尾数位来表示实数。
在C语言中,我们经常需要将这种二进制表示的浮点数转换为十进制,以便进行数值计算或输出。
2. IEEE标准的32位浮点数表示在C语言中,我们可以用以下结构体来表示IEEE标准的32位浮点数:```ctypedef struct {unsigned int mantissa : 23;unsigned int exponent : 8;unsigned int sign : 1;} ieee_float;```其中,mantissa表示尾数部分,exponent表示指数部分,sign表示符号位。
在进行转换之前,我们需要将这些位按照IEEE标准的规则重新组合成一个32位的二进制数,然后将其转换为十进制表示。
3. 转换算法在C语言中,我们可以编写一个函数来实现将32位浮点数转换为十进制的功能。
下面是一个简单的实现:```c#include <stdio.h>float ieee_float_to_decimal(ieee_float f) {int sign = f.sign == 1 ? -1 : 1;int exponent = f.exponent - 127;float mantissa = 1;for (int i = 0; i < 23; i++) {if (f.mantissa >> (22 - i) & 1) {mantissa += 1.0 / (1 << (i + 1));}}return sign * mantissa * pow(2, exponent);}int main() {ieee_float f = {0x41973333};// 此处的 0x41973333 是一个例子,代表一个32位浮点数的二进制表示float decimal = ieee_float_to_decimal(f);printf("%f\n", decimal);return 0;}```4. 总结和回顾通过以上的转换算法,我们可以将IEEE标准的32位浮点数转换为十进制表示。
32位浮点数与十进制转化

1 32位IEE754浮点格式对于大小为32-bit的浮点数(32-bit为单精度,64-bit浮点数为双精度,80-bit为扩展精度浮点数),1、其第31 bit为符号位,为0则表示正数,反之为复数,其读数值用s表示;2、第30~23 bit为幂数,其读数值用e表示;3、第22~0 bit共23 bit作为系数,视为二进制纯小数,假定该小数的十进制值为x;十进制转浮点数的计算方法:则按照规定,十进制的值用浮点数表示为:如果十进制为正,则s = 0,否则s = 1;将十进制数表示成二进制,然后将小数点向左移动,直到这个数变为1.x的形式即尾数,移动的个数即为指数。
为了保证指数为正,将移动的个数都加上127,由于尾数的整数位始终为1,故舍去不做记忆。
对3.141592654来说, 1、正数,s = 0;2、3.141592654的二进制形式为正数部分计算方法是除以二取整,即得11,小数部分的计算方法是乘以二取其整数,得0.0010 0100 0011 1111 0110 1010 1000,那么它的二进制数表示为11.0010 0100 0011 1111 0110 1010 1;3、将小数点向左移一位,那么它就变为1.1001 0010 0001 1111 1011 0101 01,所以指数为1+127=128,e = 128 = 1000 0000;4、舍掉尾数的整数部分1,尾数写成0.1001 0010 0001 1111 1011 0101 01,x = 921FB65、最后它的浮点是表示为0 1000 0000 1001 0010 0001 1111 1011 0101 = 40490FDA//--------------------------------------------// 十进制转换为32位IEE754浮点格式 //--------------------------------------------void ConvertDexToIEE754(float fpointer,ModRegisterTpyedef *SpModRegister) {double integer,decimal;unsigned long bininteger,bindecimal; Uint8 _power,i;decimal = modf(fpointer,&integer); if(decimal || integer) {bindecimal = decimal * 0x800000; //2^23 while((bindecimal & 0xff800000) > 0) bindecimal >>= 1; if(integer > 0) {bininteger = integer;for(i=0;i<32;i++) //计算整数部分的2的幂指数{if(bininteger&0x1) _power = i; bininteger >>= 0x1; }bininteger = integer;bininteger &= ~(0x1 << _power); //去掉最高位的1if(_power >= 23) //如果幂指数>23 则舍弃小数位部分 {bininteger >>= (_power-23); bindecimal = 127+_power; bininteger |= bindecimal << 23; } else {bininteger <<= (23 - _power); bindecimal >>= _power; bininteger |= bi ndecimal; bindecimal = 127+_power; bininteger |= bindecimal << 23; } }else if(integer == 0) {bindecimal <<= 9; _power = 0;bininteger = bindecimal;while(bininteger == ((bindecimal<<1)>>1)) {_power++;bindecimal <<= 0x1; bininteger = bindecimal; }_power++;bindecimal <<= 0x1; bindecimal >>= 9;bininteger = bindecimal; bindecimal = 127-_power;bininteger |= bindecimal << 23; } i = 0;SpModRegister->RegByte[i++] = (bininteger >> 24) & 0xff; SpModRegister->RegByte[i++] = (bi ninteger >> 16) & 0xff; SpModRegister->RegByte[i++] = (bininteger >> 8 ) & 0xff;SpModRegister->RegByte[i++] = bininteger & 0xff; } }浮点数转十进制的计算方法:则按照规定,浮点数的值用十进制表示为:= (-1)^s * (1 + x) * 2^(e – 127) 对于49E48E68来说,1、其第31 bit为0,即s = 02、第30~23 bit依次为100 1001 1,读成十进制就是147,即e = 147。
ieee754浮点数转换成十进制

ieee754浮点数转换成十进制IEEE 754浮点数是一种用于表示浮点数的标准,它规定了浮点数的存储方式和运算规则。
本文将介绍IEEE 754浮点数的转换方法,以及如何将其转换为十进制表示。
我们需要了解IEEE 754浮点数的组成结构。
一个IEEE 754浮点数由三个部分组成:符号位、指数位和尾数位。
符号位用于表示浮点数的正负,0表示正数,1表示负数。
指数位表示浮点数的指数部分,用于确定浮点数的数量级。
尾数位表示浮点数的小数部分,用于确定浮点数的精度。
接下来,我们将详细介绍IEEE 754浮点数的转换方法。
首先,根据符号位确定浮点数的正负。
如果符号位为0,则浮点数为正数;如果符号位为1,则浮点数为负数。
然后,根据指数位确定浮点数的数量级。
指数位采用偏移二进制表示,偏移量为2^(k-1)-1,其中k 为指数位的位数。
偏移二进制表示的目的是为了将指数位的取值范围从[-2^(k-1),2^(k-1)-1]映射到[0,2^k-1],方便进行计算。
最后,根据尾数位确定浮点数的精度。
尾数位采用定点二进制表示,小数点在尾数位中的位置由指数位决定。
通过将尾数位转换为十进制表示,我们可以得到浮点数的精确值。
下面我们通过一个例子来演示IEEE 754浮点数的转换过程。
假设我们要将32位的IEEE 754浮点数01000010100000000000000000000000转换为十进制表示。
首先,根据符号位确定浮点数的正负,由于符号位为0,所以浮点数为正数。
然后,根据指数位确定浮点数的数量级。
指数位为10000101,采用偏移二进制表示,偏移量为2^(8-1)-1=127,所以指数位的值为10000101-127=134。
最后,根据尾数位确定浮点数的精度。
尾数位为00000000000000000000000,转换为二进制表示为0。
因此,浮点数的十进制表示为0。
通过以上的例子,我们可以看到,将IEEE 754浮点数转换为十进制表示是一个相对简单的过程。
c语言32位浮点数转换十进制公式

c语言32位浮点数转换十进制公式下载提示:该文档是本店铺精心编制而成的,希望大家下载后,能够帮助大家解决实际问题。
文档下载后可定制修改,请根据实际需要进行调整和使用,谢谢!本店铺为大家提供各种类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by this editor. I hope that after you download it, it can help you solve practical problems. The document can be customized and modified after downloading, please adjust and use it according to actual needs, thank you! In addition, this shop provides you with various types of practical materials, such as educational essays, diary appreciation, sentence excerpts, ancient poems, classic articles, topic composition, work summary, word parsing, copy excerpts, other materials and so on, want to know different data formats and writing methods, please pay attention!C 语言 32 位浮点数转换为十进制公式及示例1. 简介在计算机科学中,浮点数是一种用于表示实数的近似值的数据类型。
iee75432位转换成浮点数十进制

IEE75432位转换成浮点数十进制1. 引言IEE754是一个定义了浮点数表示方法的标准,它规定了不同精度的浮点数的表示方式,包括单精度浮点数(32位)和双精度浮点数(64位)。
在计算机科学和工程中,我们经常会遇到需要将32位的IEE754表示的浮点数转换成十进制数的情况。
本文将深入探讨IEE75432位转换成浮点数十进制的方法和原理。
2. IEE75432位表示形式在IEE754标准中,单精度浮点数采用32位表示,其中包括1位符号位(s)、8位指数位(e)和23位尾数位(m)。
以一个32位的无符号整数来表示一个单精度浮点数,其转换规则如下:- 符号位:第一位表示符号,0代表正数,1代表负数。
- 指数位:接下来的8位表示指数,需要减去127得到真正的指数值。
- 尾数位:剩下的23位表示尾数,加上1得到尾数的真实值。
3. 转换原理要将IEE75432位表示的浮点数转换成十进制数,首先需要确定符号、指数和尾数的值。
然后根据这些值,利用指数的偏移和尾数的加权,计算出十进制数的值。
4. 转换步骤(1)确定符号位、指数位和尾数位的值。
(2)根据指数位的偏移值计算出真实的指数值。
(3)根据尾数位的加权值计算出真实的尾数值。
(4)根据符号位确定最终的十进制数的符号。
(5)利用指数值和尾数值计算出十进制数的值。
5. 举例以IEE754标准表示的32位浮点数01000001101000000000000000000000为例,其符号位为0,指数位为10000011,尾数位为01000000000000000000000。
根据上述转换步骤,计算出其十进制值为-21.0。
6. 总结IEE75432位转换成浮点数十进制是一个涉及到符号、指数和尾数的复杂计算过程。
通过本文的深入探讨,希望读者能对这一过程有更深刻的理解。
在实际应用中,需要根据具体的转换规则和计算方法,准确地将IEE75432位表示的浮点数转换成十进制数。
32位浮点数最大数的二进制表示

32位浮点数最大数的二进制表示32位浮点数最大数的二进制表示是1 11111110 11111111111111111111111,32位浮点数由三部分组成:符号位、指数位和尾数位。
符号位用来表示数的正负,0表示正数,1表示负数;指数位用来表示数的指数部分;尾数位用来表示数的尾数部分。
在32位浮点数中,符号位占1位,指数位占8位,尾数位占23位。
所以32位浮点数的最大值是由指数位和尾数位决定的。
32位浮点数的指数位的最大值是11111110,而尾数位的最大值是11111111111111111111111。
将这两部分拼接在一起,就得到了32位浮点数最大值的二进制表示。
首先,我们来看符号位。
由于这是32位浮点数的最大值,所以符号位为0,表示正数。
接着,我们来看指数位和尾数位。
指数位的最大值是11111110,转换成十进制是254。
但是由于浮点数的指数部分有一个偏移量,因此实际的指数部分是254-127=127。
尾数位的最大值是11111111111111111111111,转换成十进制是8388607。
将符号位、指数部分和尾数部分拼接在一起,就得到了32位浮点数最大值的二进制表示:1 11111110 11111111111111111111111。
换算成十进制,这个二进制数表示的值是(1*2^127)*(1+8388607/(2^23)) = 3.4028235*10^38。
这说明32位浮点数的最大值是3.4028235*10^38。
从上面的计算可以看出,32位浮点数最大值的二进制表示是1 11111110 11111111111111111111111,对应的十进制表示是3.4028235*10^38。
这个数值是非常大的,超过了我们通常使用的范围。
因此,在实际编程中,如果需要表示更大的数值,需要使用64位或以上的浮点数类型来进行存储和计算。
总之,32位浮点数最大值的二进制表示是1 11111110 11111111111111111111111,对应的十进制表示是3.4028235*10^38。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
流量计计算机通过485端口以MODBUS协议把内部IEEE32位浮点数传送到DCS的数据经过研究试验,其数据格式如下数据请求依次为:十六进制从站地址:01;读命令:03;数据起始高位地址:0F;数据起始低位地址:A0;(0FA0=4000即地址44001);数据长度高位:00;数据长度低位:28;(0028=40即40个地址);CRC效验码:46,E2数据应答格式:从站地址:01;读命令反馈:03;数据长度:50;第一个地址:69;C0;48;A9;第二个地址:C5;00;48;A2;以下类推,直到最后两位CRC:E8;86第一个地址:69;C0;48;A9是如何换算为346958的呢?流量计发送的是IEEE标准的32位浮点数首先要把69;C0;48;A9进行高低16位交换变成:48;A9;69;C0变为32位二进制数:01001000 10101001 01101001 11000000其中最高位为0,代表是正数接下来的八位:10010001变成十进制是145,根据IEEE规范应减去127得18,这是小数点右移的位数;剩下的23位是纯二进制小数即:0.0101001 01101001 11000000加1后得1.0101001 01101001 11000000小数点右移18位后得10101001 01101001 110.00000变为十进制得346958其它地址的32位浮点数计算方法同上标题:《IEEE754 学习总结》发信人:Vegeta时间:2004-11-11,10:32详细信息:一:前言二:预备知识三:将浮点格式转换成十进制数四:将十进制数转换成浮点格式(real*4)附:IEEE754 Converte 1.0介绍一:前言前不久在分析一个程序的过程中遇到了浮点运算,也就顺便学习了一下浮点数的存放格式(IEEE754标准),此文仅作为总结,其中举了几个典型的例子,如果你想深入了解IEEE754标准,我想本文并不太适合您。
二:预备知识-----------------------------------------------------------------------值存储为指数偏移量real*4 1位符号位(s)、8位指数(e),23位尾数(m,共32位) 127(7FH)real*8 1位符号位(s)、11位指数(e),52位尾数(m,共64位) 1023(3FFH)real*10 1位符号位(s)、15位指数(e),64位尾数(m,共80位) 16383(3FFFH)-----------------------------------------------------------------------计算公式:V=(-1)^s*2^E*M当e(各位)为全'0'时,E=1-(2^(e(位数)-1)-1),;M=m。
如:real*4是8位,E=1-(2^(8-1)-1)=1-127=-126即,在real*4时:V=(-1)^s*2^(-126)*m在real*8时:V=(-1)^s*2^(-1022)*m当e(各位)不为全'0'且不为全'1'时,E=e(值)-(2^(e(位数)-1)-1);M=1+m。
即,在real*4时:V=(-1)^s*2^(e(值)-127)*(1+m)在real*8时:V=(-1)^s*2^(e(值)-1023)*(1+m)三:将浮点格式转换成十进制数[例3.1]:0x00280000(real*4)转换成二进制00000000001010000000000000000000符号位指数部分(8位)尾数部分0 00000000 01010000000000000000000符号位=0;因指数部分=0,则:尾数部分M为m:0.01010000000000000000000=0.3125该浮点数的十进制为:(-1)^0*2^(-126)*0.3125=3.6734198463196484624023016788195e-39[例3.2]:0xC04E000000000000(real*8)转换成二进制1100000001001110000000000000000000000000000000000000000000000000符号位指数部分(11位)尾数部分1 10000000100 1110000000000000000000000000000000000000000000000000符号位=1;指数=1028,因指数部分不为全'0'且不为全'1',则:尾数部分M为1+m:1.1110000000000000000000000000000000000000000000000000=1.875该浮点数的十进制为:(-1)^1*2^(1028-1023)*1.875=-60四:将十进制数转换成浮点格式(real*4)[例4.1]:26.0十进制26.0转换成二进制11010.0规格化二进制数1.10100*2^4计算指数4+127=131符号位指数部分尾数部分0 10000011 10100000000000000000000以单精度(real*4)浮点格式存储该数0100 0001 1101 0000 0000 0000 0000 00000x41D0 0000[例4.2]:0.75十进制0.75转换成二进制0.11规格化二进制数1.1*2^-1计算指数-1+127=126符号位指数部分尾数部分0 01111110 10000000000000000000000以单精度(real*4)浮点格式存储该数0011 1111 0100 0000 0000 0000 0000 0000 0x3F40 0000[例4.3]:-2.5十进制-2.5转换成二进制-10.1规格化二进制数-1.01*2^1计算指数1+127=128符号位指数部分尾数部分1 10000000 01000000000000000000000以单精度(real*4)浮点格式存储该数1100 0000 0010 0000 0000 0000 0000 0000 0xC020 0000附:IEEE754 Converte 1.0介绍用IEEE754 Converte 1.0 转换[例3.2]的截图IEEE754 Converter 目前可以对以下数据进行相互转换:┌────────────────────────┐│real*4(HEX)<--->floating point numbers(DEC) ││││real*8(HEX)<--->floating point numbers(DEC) │└────────────────────────┘现举例说明其使用方法:在Softice中用D命令查看内存地址:0050C510,可得:0030:0050C510 00 00 00 00 00 00 4E 40-00 00 00 00 00 00 20 40 ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^并已知数据为REAL*8。
为了方便使用,在[Input]中只需输入:4E40 ,而不用转换成404E。
单击REAL*8中的[HEX--->F-P]按键即可在[Output]中得到结果:60 。
反之亦然:在[Input]中输入:60,按[F-P--->HEX]得:4E40。
补码补码举例1、在计算机系统中,数值一律用补码来表示(存储)。
主要原因:使用补码,可以将符号位和其它位统一处理;同时,减法也可按加法来处理。
另外,两个用补码表示的数相加时,如果最高位(符号位)有进位,则进位被舍弃。
2、补码与原码的转换过程几乎是相同的。
数值的补码表示也分两种情况:(1)正数的补码:与原码相同。
例如,+9的补码是00001001。
(2)负数的补码:符号位为1,其余位为该数绝对值的原码按位取反;然后整个数加1。
例如,-7的补码:因为是负数,则符号位为“1”,整个为10000111;其余7位为-7的绝对值+7的原码0000111按位取反为1111000;再加1,所以-7的补码是11111001。
已知一个数的补码,求原码的操作分两种情况:(1)如果补码的符号位为“0”,表示是一个正数,所以补码就是该数的原码。
(2)如果补码的符号位为“1”,表示是一个负数,求原码的操作可以是:符号位为1,其余各位取反,然后再整个数加1。
例如,已知一个补码为11111001,则原码是10000111(-7):因为符号位为“1”,表示是一个负数,所以该位不变,仍为“1”;其余7位1111001取反后为0000110;再加1,所以是10000111。
在“闲扯原码、反码、补码”文件中,没有提到一个很重要的概念“模”。
我在这里稍微介绍一下“模”的概念:“模”是指一个计量系统的计数范围。
如时钟等。
计算机也可以看成一个计量机器,它也有一个计量范围,即都存在一个“模”。
例如:时钟的计量范围是0~11,模=12。
表示n位的计算机计量范围是0~2^(n)-1,模=2^(n)。
“模”实质上是计量器产生“溢出”的量,它的值在计量器上表示不出来,计量器上只能表示出模的余数。
任何有模的计量器,均可化减法为加法运算。
例如:假设当前时针指向10点,而准确时间是6点,调整时间可有以下两种拨法:一种是倒拨4小时,即:10-4=6另一种是顺拨8小时:10+8=12+6=6在以12模的系统中,加8和减4效果是一样的,因此凡是减4运算,都可以用加8来代替。
对“模”而言,8和4互为补数。
实际上以12模的系统中,11和1,10和2,9和3,7和5,6和6都有这个特性。
共同的特点是两者相加等于模。
对于计算机,其概念和方法完全一样。
n位计算机,设n=8,所能表示的最大数是11111111,若再加1称为100000000(9位),但因只有8位,最高位1自然丢失。
又回了00000000,所以8位二进制系统的模为2^8。
在这样的系统中减法问题也可以化成加法问题,只需把减数用相应的补数表示就可以了。
把补数用到计算机对数的处理上,就是补码。
另外两个概念一的补码(one's complement) 指的是正数=原码,负数=反码而二的补码(two's complement) 指的就是通常所指的补码。
这里补充补码的代数加减运算:1、补码加法[X+Y]补= [X]补+ [Y]补【例7】X=+0110011,Y=-0101001,求[X+Y]补[X]补=00110011 [Y]补=11010111[X+Y]补= [X]补+ [Y]补= 00110011+11010111=00001010注:因为计算机中运算器的位长是固定的,上述运算中产生的最高位进位将丢掉,所以结果不是100001010,而是00001010。