`
shellfj
  • 浏览: 48026 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

二进制运算

 
阅读更多
二进制运算分为两大块:算数运算和逻辑运算。
1、二进制的算术运算
  二进制数的算术运算非常简单,它的基本运算是加法。在计算机中,引入补码表示后,加上一些控制逻辑,利用加法就可以实现二进制的减法、乘法和除法运算。

1)二进制的加法运算
  二进制数的加法运算法则只有四条:0+0=0 0+1=1 1+0=1 1+1=10(向高位进位)
  例:计算1101+1011的和
  由算式可知,两个二进制数相加时,每一位最多有三个数:本位被加数、加数和来自低位的进位数。按照加法运算法则可得到本位加法的和及向高位的进位。

(2)二进制数的减法运算
  二进制数的减法运算法则也只有四条: 0-0=0 0-1=1(向高位借位) 1-0=1 1-1=0
  例:计算11000011 00101101的差
  由算式知,两个二进制数相减时,每一位最多有三个数:本位被减数、减数和向高位的借位数。按照减法运算法则可得到本位相减的差数和向高位的借位。

(3)二进制数的乘法运算
  二进制数的乘法运算法则也只有四条: 0*0=0 0*1=0 1*0=0 1*1=1
  例:计算1110×1101的积
  由算式可知,两个二进制数相乘,若相应位乘数为1,则部份积就是被乘数;若相应位乘数为0,则部份积就是全0。部份积的个数等于乘数的位数。以上这种用位移累加的方法计算两个二进制数的乘积,看起来比传统乘法繁琐,但它却为计算机所接受。累加器的功能是执行加法运算并保存其结果,它是运算器的重要组成部分。

(4)二进制数的除法运算
  二进制数的除法运算法则也只有四条: 0÷0=0 0÷1=0 1÷0=0(无意义) 1÷1=1
  例:计算100110÷110的商和余数。
  由算式可知,(100110)2÷(110)2得商(110)2,余数(10)2。但在计算机中实现上述除法过程,无法依靠观察判断每一步是否“够减”,需进行修改,通常采用的有“恢复余数法”和“不恢复余数法”,这里就不作介绍了。

2、二进制数的逻辑运算
  计算机所以具有很强的数据处理能力,是由于在计算机里装满了处理数据所用的电路。这些电路都是以各种各样的逻辑为基础而构成的简单电路经过巧妙组合而成的。
  逻辑变量之间的运算称为逻辑运算,它是逻辑代数的研究内容。在逻辑代数里,表示"真"与"假"、"是"与"否"、"有"与"无"这种具有逻辑属性的变量称为逻辑变量,像普通代数一样,逻辑变量可以用A,B,C,……或X,Y,Z……来表示。对二进制数的1和0赋以逻辑含义,例如用1表示真,用0表示假,这样将二进制数与逻辑取值对应起来。由此可见,逻辑运算是以二进制数为基础的。值得指出的是,普通代数的变量可以有各种各样的取值,而逻辑变量的取值只有两种:真和假,也就是1和0。
  逻辑运算包括三种基本运算:逻辑加法(又称"或"运算)、逻辑乘法(又称"与"运算)和逻辑否定(又称"非"运算)。此外,还有异或运算和符合运算,等等。计算机的逻辑运算是按位进行的,不像算术运算那样有进位或借位的联系。

(1)逻辑加法(“或”运算)
     逻辑加法通常用符号“+”或“∨”来表示。逻辑加法运算规则如下:
     0+0=0, 0∨0=0
     0+1=1, 0∨1=1
     1+0=1, 1∨0=1
     1+1=1, 1∨1=1
     从上式可见,逻辑加法有“或”的意义。也就是说,在给定的逻辑变量中,A或B只要有一个为1,其逻辑加的结果为1;两者都为1则逻辑加为1。

(2)逻辑乘法(“与”运算)
     逻辑乘法通常用符号“×”或“∧”或“·”来表示。逻辑乘法运算规则如下:
     0×0=0, 0∧0=0, 0·0=0
     0×1=0, 0∧1=0, 0·1=0
     1×0=0, 1∧0=0, 1·0=0
     1×1=1, 1∧1=1, 1·1=1
     不难看出,逻辑乘法有“与”的意义。它表示只当参与运算的逻辑变量都同时取值为1时,其逻辑乘积才等于1。

(3)逻辑否定(非运算)
     逻辑非运算又称逻辑否运算。其运算规则为:
     0=1 非0等于1
     1=0 非1等于0

(4)异或逻辑运算(半加运算)
     异或运算通常用符号"⊕"表示,其运算规则为:
     0⊕0=0 0同0异或,结果为0
     0⊕1=1 0同1异或,结果为1
     1⊕0=1 1同0异或,结果为1
     1⊕1=0 1同1异或,结果为0
     即两个逻辑变量相异,输出才为1
分享到:
评论

相关推荐

    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