计算机基础(一)

“道生一,一生二,二生三,三生万物“--《道德经》

1.走进0与1的世界

本质上说,计算机就是晶体管、电路板组装起来的电子设备,无论是图形图像的旋绕、网络远程共享,还是大数据计算,归根结底都是0与1的信号处理。

信息存储和逻辑计算的元数据,只能是0与1,但是它们在不同介质里的物理表现方式却是不一样的,如三极管的断电与通电、CPU的低电平与高电平、磁盘的电荷左右方向。

明确了物理表现方式后,确定他的基数为2,进位规则是“逢二进一”,借位规则是“借一当二”,所以称为二进制。如何在生活中表现二进制,

1=1,10=2,100=4....(每一位逢二进一)

假设有8条电路,那排列组合有2的8次方种情况。代表256种不同的数字信号。

假设区间为0~255,那最大值为2^8 -1即255,那么32条电路的话,最大值为4,294,967,295。平时我们说的32位机器,指的就是同时可以处理字长32的电路信号。

如何表示负数?上面8条电路,最左侧电路表示正负,0表示正数,1表示负数。比如01111111代表127,11111111代表-128,取值范围为-128~127。正数的补码与原码,反码一样,而负数的补码是反码加1的结果。比如35 + (-35)如图1-1(a)所示,35-37如图1-1(b)所示。


加减法是高频运算,使用同一个运算器,可以减少中间变量存储的开销,这样也降低CPU内部设计的复杂度,使内部结构更加精简,计算更加高效,无论对于指令、寄存器,运算器都减轻不少负担。

如图1-1(c)所示,计算结果需要9条电路来表示,用8条电路来表达这个计算结果即溢出,即在数值运算过程中,超出规定的表示范围。一旦溢出,结果就是错误的。在各种编程语言中,均规定了不同数字类型的表示范围,有相应的最大值和最小值。

以上示例中的一条电路线在计算机中被称为1位,即1个bit,简写为b。8个bit组成一个单位,称为一个字节,即1个Byte,简写为B。1024个Byte,简写为KB;1024个KB,简写为MB;1024个MB,简写为GB,这些都是计算机中常用存储计量单位。

除二进制的加减法外,还有一种大家既陌生又熟悉的操作:位移运算。陌生是指不易理解且不常用,熟悉是指“别人家的开发工程师”在代码中经常使用这种方式进行高低位的截取、哈希计算,甚至运用在乘除法运算中。向右移一位,近似表示除以2(如表1-1所示),十进制的奇数转化为二进制数后,在向右移时,最右边的1将被直接抹去,说明向右移对于奇数并非完全相当于除以2。在左移<<与右移>>两种运算中,符号位均参与移动,除负数往右移动,高位补1之外,其他情况均在空位处补0,红色是原有数据的符号位,绿色仅是标记,便于识别移动方向。


左移运算由于符号位参与向左移动,在移动后的结果中,最左位可能是1或者0,即正数向左移动的结果可能是正,也可能是负;负数向左移动的结果同样可能是正,也可能是负。

对于三个大于号的>>>无符号向右移动(注意不存在<<<无符号计算方式),当向右移动时,正负数高位均补0,正数不断向右移动的最小值是0,。


在实际运算中,整数为32位,无符号移动mod 32时,为本身,即 35>>1与35>>33是相等的。如果是64位时,无符号移动mod 64为本身,即35>>1与35>>65是相等的。

位逻辑运算,110&101=100 ,110|101=111,~110=001,110^101=100,true&false也是合法的,因为boolean底层就是0和1。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,657评论 6 505
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,889评论 3 394
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,057评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,509评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,562评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,443评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,251评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,129评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,561评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,779评论 3 335
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,902评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,621评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,220评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,838评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,971评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,025评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,843评论 2 354

推荐阅读更多精彩内容