`
wjjbfq
  • 浏览: 82121 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

二进制的运算

阅读更多
二进制的运算方法
负数怎么加:
1 :0000 0001
-1 :1111 1111
正数变负数 :去反加1
-1 + -1 =?
1111 1110  :-2
2为:0000 0010
取反:1111 1101
再+1:1111 1110

 

二进制与其它进制的转换和运算,应该说是计算机类的考试,逢试必考,这里总结一下知识点。

二进制运算原理,大家都知道,不外乎,除2取余和乘2取整。这种费时、费力的方法,这里就不说了。考试讲究的时间,所以要找些简便的方法,必要时还是要记一下“二进制的变化形”,做到一看二进制数就知道其的十进制是多少,形成条件反射,就和我们打五笔一样,不需要再默诵字根了。

一、多种进制之间换算、比较和运算的顺序和原则

1、先比较整数部分,再比较小数部分;

2、“八进制”、“十六进制”,都转换成“二进制”进行比较大小;

3、再将其中最大数由“二进制”转换成“十进制”数与剩下的“十进制”数比较大小;


二、整数部分的二进制转换成十进制

每4位为一组,每组有不同权值,从左至右为,“212、28、24、20”或“4096、256、16、1”,“n”为每组二进制的十进制值。我这么说你可能些糊涂,看看下面的两个例子,就明白了。其简便之处,在于只需记住“15 - 0”的二进制是多少就可以了。

1111           1111            1111           1111

(4096×n) + (256×n) + (16×n) + (1×n)

(212×n) + (28×n) + (24×n) + (20×n)


如:十六进制数“5E”的十进制数是多少?答:94

0101 1110

5×16 + 14×1 = 94


如:二进制数“0101 1100 0110”的十进制数是多少?答:1478

0101 1100 0110

5×256 + 12×16 + 6×1 = 1478


三、小数部分的二进制转换成十进制,需要记忆小数位后六位的二进制数。

 

指数 分数 二进制 十进制
2-1 1/21 .1 .5
2-2 1/22 .01 .25
2-3 1/23 .001 .125
2-4 1/24 .0001 .0625
       
   2-5 1/25 .0000 1 .03125
   2-6 1/26 .0000 01 .015625


如:二进制小数“.01011”转换成十进制小数为多少?答:“0.34375”

二进制数:0101 1
0.25 + 0.0625 + 0.03125 = 0.34375


四、二进制的分组,每四位分一组,和十六进制相统一,便于计算。

不足四位的分组,其原则是,整数位向左借0成组,小数位向右借0成组。

如:二进制数“1010100.001101”

二进制分组: 0101 0100 . 0011 0100

八进制分组: 001 010 100 . 001 101

 

原码

反码 正数的反码 = 原码
负数的反码 = 原码符号位不变,其余位逐位取反

补码 正数的补码 = 原码
负数的补码 = 原码符号位不变,其余位逐位取反,+1

移码 与补码的符号相反,常用来表示浮点数的阶码


欲对二进制各位取反,可用FFFF与该数进行异或运算。

二进制数的算术运算包括加法、减法、乘法和除法。基本运算是加法和减法运算。

    1. 二进制数的加法运算

         加法运算按下列三条法则进行:

        (1)0 + 0 = 0    (2)0 + 1 = 1 + 0 = 1    (3)1 + l = 10 (逢二进一,向高位进位 )

          例 (1010)2 + (1011)2 的算式如下:

                            被加数 1010

                             加数    1011

                        +) 进位    1010

              和数   10101

由上述执行加法的过程可以看出,两个二进制数相加时。每一位最多有三个数相加,即本位被加数、加数和从低位来的进位 ( 进位可能是 0 ,也可能是 1) 。按加法运算法则可得到本位加法的和及向高位的进位。

     2. 二进制数的减法运算

   减法运算按下列三条法则进行,

         (1)0-0 = l-1 = 0 (2)1-0 = l   (3)0-1 = 1( 此时要向高位借位,借 l 当 2)

              例 (11100101) 2 - (10011010) 2 的算式如下:

                   被减数   11100101

                       减数 10011010

                   -) 借位    0011010

    差数    01001011

           由上述执行减法运算过程可知,两个二进制数相减时,每位最多有三个数:本位被减数、减数和向高位的借位 , 借 1 当 2 。所以做减法运算时,除了每位相减外,还要考虑借位情况。

     3. 二进制数的乘法运算

         二进制数的乘法运算有下列三条法则:

         (1)0 × 0 = 0         (2)0 × l = 1 × 0 = 0        (3)1 × 1 = 1

          例 (1011) 2 × (1101) 2 的算式如下:

                         被乘数 1011

                     × ) 乘数 1101

                             1011

                         0000

                        部分积 1011

                                     1011

                      乘积    10001111

     由上述乘法运算过程可知,每个部分积都取决于乘数相应位是0还是1。若乘数的相应位为0,则此次部分积为0;若乘数的相应位为1,则此次部分积就是被乘数。部分积的数目与乘数的位数相同,每次的部分积依次左移一位。将各部分积累加起来,就得到最终的乘积。计算机中实现二进制数的乘法运算,通常采用的是移位相加的方法。

    4. 二进制数的除法运算

            二进制数的除法运算按下列三条法则进行:

        (1) 0 ÷ 0 = 0  (2) 0 ÷ 1 = 0 (1 ÷ 0 是无意义的 )    (3) 1 ÷ 1 = 1

            例 (111011) 2 ÷ (1011) 2 的算式如下:

              101 商数

                      除数 1011)111011 被除数

                                    1011

                                    1111

                                1011

                                     100 余数

                   即 (111011)2 ÷ (1011)2,其商为 (101)2,余数为(100)2 。

                   在计算机中实现二进制数的除法运算,通常采用移位相减的方法。

分享到:
评论

相关推荐

    java二进制运算器(加、见、乘、除)

    在Java编程语言中,二进制运算是一种基础且重要的概念,尤其对于计算机科学的理解和算法设计至关重要。二进制运算器通常是指一个程序或工具,它能够执行针对二进制数的基本算术运算,如加法、减法、乘法和除法。在这...

    C++ 二进制运算

    ### C++ 二进制运算详解 在计算机科学与编程领域,二进制运算是一个基础且关键的概念,尤其在底层编程、数据处理以及算法优化等方面有着广泛的应用。本文将深入探讨C++中的二进制运算,包括按位与、按位或、按位...

    CE二进制运算器正式版

    "CE二进制运算器正式版"是一款专用于进行二进制运算的软件,它在IT领域中的应用主要集中在计算和逻辑操作上。作为一个专业的IT工具,它允许用户执行包括加法、减法、乘法、除法以及位移、按位与、按位或、按位异或等...

    圣克鲁斯加利福尼亚大学的老师Eric Lengyel总结的二进制运算基础

    二进制运算基础 二进制运算是计算机科学和IT行业的基础知识,Eric Lengyel老师总结的二进制运算基础为我们提供了一份详细的参考资料。在这份资料中,我们可以看到各种二进制运算的公式、图示和应用场景。 首先,让...

    二进制运算及转换PPT课件.pptx

    二进制运算及转换PPT课件 二进制运算及转换是计算机技术中非常重要的一部分。了解二进制运算及转换的原理和方法,对于计算机技术的应用和发展具有重要的意义。 在日常生活中,人们广泛使用的是十进制数,但是...

    大数运算包含加,减,乘,除,取模,幂运算,模幂运算。支持十进制运算,二进制运算.zip

    支持十进制运算,二进制运算.zip"文件中,我们可以预见到这可能是一个关于大数运算的程序或库,它不仅支持常见的十进制运算,还特别强调了二进制运算。 1. **大数运算**:大数运算通常在需要精确计算或处理大数据量...

    C语言课程设计之二进制运算

    在本项目“C语言课程设计之二进制运算”中,我们主要探讨的是如何利用C语言进行二进制运算和高精度计算。这两部分是计算机科学基础中的关键领域,对于理解计算机内部工作原理以及实现复杂算法至关重要。 首先,我们...

    二进制运算器的源代码

    这是一个模拟计算机进行加法和数的原码、反码,补码的分析工具。我希望这个工具能对需要它的人有所帮助,所以决定通过GNU General Public License发布这个自由软件。我使用的编译环境是VS2010Express。...

    w.zip_二进制运算

    在IT领域,尤其是在计算机科学和编程中,二进制运算起着至关重要的作用。二进制,即由0和1组成的数字系统,是计算机内部处理数据的基础。在“w.zip_二进制运算”这个主题中,我们主要探讨的是长整数的表示以及在二...

    易语言二进制递归运算

    在二进制运算中,递归函数可能接受一个整数作为输入,并返回其二进制表示。基础情况可能是当输入值为0或1时,直接返回对应的二进制字符串。对于其他值,函数会调用自身,将输入值除以2并递归处理商,然后将余数与...

    二进制运算规则.pdf

    "二进制运算规则.pdf" 本文将对二进制运算规则进行详细的介绍和解释,并对定点数和浮点数的表示方法进行比较。 一、加法规则 在二进制中,加法规则是将两个二进制数相加,得到的结果是一个新的二进制数。例如,将...

    二进制运算PPT学习教案.pptx

    "二进制运算PPT学习教案" 本教案旨在帮助学生掌握二进制运算的基本概念和运算规则。通过学习本教案,学生将了解逻辑代数和逻辑变量的概念,掌握基本的逻辑运算,如逻辑加法、逻辑乘法和逻辑否定,并了解二进制数的...

    二进制运算规则.doc

    二进制运算规则是计算机科学中的基础概念,用于理解和处理二进制数的加法、减法、乘法和除法。二进制系统由0和1组成,是计算机内部处理数据的基础。以下是对二进制运算规则的详细说明: **2.3 二进制数的运算规则**...

    二进制运算及转换PPT学习教案.pptx

    二进制运算及转换是计算机科学中的基础概念,它涉及到数字系统的工作原理。在这个PPT学习教案中,主要讲解了二进制数及其与十进制数之间的转换,以及二进制数的各种基本运算。 首先,数制或进位计数制是用于表示...

    C++实现十进制转二进制运算(改进版)

    在C++编程中,将十进制数转换为二进制数是一项常见的任务。这个"改进版"的C++实现不仅提供了将正十进制数转换为二进制的功能,而且还支持负数的转换,这涉及到二进制补码的概念。下面我们将详细探讨这些知识点。 1....

    C++实现十进制转二进制运算

    在计算机科学中,二进制和十进制是两种最常见的数字表示法。十进制是我们日常生活和计算中普遍使用的系统,而二进制则是计算机内部处理数据的基础。本篇文章将详细探讨如何使用C++编程语言实现从十进制到二进制的...

    运算基础二进制的运算和计算机中的四则运算.ppt

    "运算基础二进制的运算和计算机中的四则运算" 在计算机科学中,了解不同的数制是非常重要的。了解二进制、八进制、十六进制、十进制等数制,可以帮助我们更好地理解计算机内部的信息表示和处理方式。 首先,让我们...

    二进制逻辑运算.pdf

    二进制逻辑运算在计算机科学领域,特别是在计算机系统和数字电路设计中扮演着核心角色。逻辑运算基于二进制数系统,其中0和1代表两种对立的状态,常用于表示真假、是与否、存在与不存在等逻辑关系。这些运算在硬件...

Global site tag (gtag.js) - Google Analytics