你从没思考过的最简单问题

来源:10-7 UML 简介

Tblackbird

2015-04-02 22:25

计算机是怎么知道1+1=2的?

写回答 关注

4回答

  • Perona
    2015-04-02 23:29:12

    计算机只识别二进制,任何的数据运算都是最后转换成二进制的运算,所以这就涉及到在学计算机的时候需要学各种进制与二进制的转化,而在二进制中基本的单位就是0,1。 0在计算机内部就是一个低电压,而1呢就是一个高电压,所以在计算机的内部就形成了,这种的高低电压,而高低电压有代表不同的数字即二进制,二进制在转化成这种数据运算,数据运算还原成各种的 音频、视频等文件。

    case1: 0+0 = 0

    case2: 0+1 = 1+0 = 1
    case3: 1+1 = 0, 并且进位。

    可以用循环来写:

    case1: 相同

    case2: 不同

    case3: 相同,但是有进位。
    Ok,找到我们要的规律了,
    不考虑Carry(进位),就是XOR(异或)运算,

    而Carry本身是一个AND(与)运算。

    那么从数字电路入手,有:
    Truth Table:

    http://img.mukewang.com/551d5fc800015fb402330117.jpg

    ~~~~~

    感兴趣的话去看一下《编码的奥秘》

  • appendLi
    2015-04-02 23:18:16

    计算机  运算时二进制运算  如果你硬是要知道所以然  建议你去看看计算机组成原理这本书

  • Tblackbird
    2015-04-02 23:09:18

    这个运算操作系统完成的,还是?

    真不知,请多多指教


  • 用户已禁用
    2015-04-02 22:27:16

        01 (1)

    + 01 (1)

    = 10 (2)

    进行与运算,进位置一

Java入门第二季 升级版

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

530556 学习 · 6091 问题

查看课程

相似问题