計算機中的計算

計算機中的計算

我們都知道計算機由軟件和硬件組成。而真正參與運算的核心硬件是處理器宪哩,即CPU。簡單來說第晰,CPU實際上就是一堆復(fù)雜的邏輯電路組成斋射。那什么是邏輯,什么又是電路但荤,什么又是邏輯電路呢?

邏輯電路

邏輯一詞來自于古希臘涧至,有一門專門研究邏輯的學(xué)科稱為邏輯學(xué)腹躁。在這里,我們對邏輯可以簡單理解為數(shù)學(xué)上的邏輯南蓬,即表示當(dāng)一定的條件成立時纺非,某個命題的真與假。在邏輯運算中赘方,最基本的3種運算是與烧颖、或、非窄陡。大家在高中數(shù)學(xué)中已經(jīng)學(xué)過了所謂的或且非真值表炕淮,且也就是我們所謂的與運算。

邏輯電路

那電路呢跳夭?通常電子部件組成的導(dǎo)電回路涂圆,稱為電路。而在數(shù)字電路中币叹,只取0和1润歉,0代表低電平,1代表高電平颈抚。數(shù)字的1和0對應(yīng)了邏輯上的真與假踩衩,因此這種電路叫做邏輯電路。

大的電路也都是由小的電路模塊組成,因此在CPU中需要設(shè)計很多基礎(chǔ)的邏輯電路驱富,例如比較器锚赤、加法器、編碼器等等

比較器

比較器的輸入是A萌朱、B的兩個32位的二進制數(shù)宴树,粗箭頭表示多根線,細線代表一根線晶疼,每根線的電平為高或者低酒贬,代表1或0。A和B各代表32根線翠霍,每一根線代表1位锭吨。輸出則有3根線,如果A>B寒匙,則第1根線呈高電平零如,其余兩根線呈低電平,如果A=B锄弱,則第2根線呈高電平考蕾,其余兩根線呈低電平,如果A<B会宪,則第3根線呈高電平肖卧,其余兩根線呈低電平

編程中的if、else語句就會用到比較器:


比較強

加法器

加法器是數(shù)字電路中最重要的模塊掸鹅,它是所有運算的基礎(chǔ)塞帐。實際上加、減巍沙、乘葵姥、除四則運算都可以使用加法器實現(xiàn)。在數(shù)學(xué)中句携,減法是加法的逆運算榔幸,除法是乘法的逆運算。例如加法是a+b矮嫉,則減法可寫為a+(-b)牡辽,乘法是a*b,則除法為a*(1/b)敞临,另外态辛,a*b又可解釋為有b個a相加,a+a+a+...挺尿,因此僅使用一個加法器就可以構(gòu)建出加奏黑、減炊邦、乘、除四種運算熟史,而這樣做可以降低CPU設(shè)計的復(fù)雜度馁害。

編碼器

當(dāng)我們在鍵盤上敲一個鍵時,計算機怎么知道我們敲的是哪個鍵呢蹂匹?

實際上是因為每個鍵都連到一個編碼器上碘菜,假如按了數(shù)字3這個鍵,相應(yīng)的連線變成高電平限寞,編碼器就輸出這個鍵的編碼忍啸。如果有16個按鍵,那么輸出可以用4根線表示履植,按鍵0用0000表示计雌,按鍵1用0001表示……計算機只需根據(jù)編碼器輸出的編碼就知道了我們按的是什么鍵,從而進行相應(yīng)的處理玫霎。

解碼器

有了編碼器凿滤,那自然會有解碼器,不然怎么知道每個編碼代表什么意思呢庶近?解碼器將每個編碼解析之后輸出到顯示屏上面顯示出來翁脆。

二進制的運算:

二進制表

加法

為了簡單,現(xiàn)在假設(shè)我們只有一個4位的加法器鼻种,則5 + 3的運算如下

將十進制數(shù)轉(zhuǎn)為二進制

將各個位上的數(shù)字相加鹃祖,滿二進位

加法運算’

再來算一下8 + 9的結(jié)果

做加法

可以看到,由于我們只有四位普舆,溢出的部分將被丟棄,黃色數(shù)字被丟棄校读,因此使用四位加法器計算8 + 9的結(jié)果是1

減法

有了加法沼侣,還需要算減法,那我們?nèi)绾尾拍苁褂眉臃ㄆ鱽碛嬎銣p法呢歉秫?要解決這個問題蛾洛,首先要引入補數(shù)的概念。

在日常生活中雁芙,時鐘的時針轉(zhuǎn)一圈為12小時轧膘,假如現(xiàn)在時鐘的時針指示到六點,想要它指向三點兔甘,我們可以按順時針方向?qū)⑺鼡芫鸥窕寻部梢阅鏁r針方向轉(zhuǎn)三格,結(jié)果是一致的洞焙。如果我們規(guī)定順時針方向為正蟆淀,逆時針方向為負拯啦,那么-3和9的效果是等價的,這時候就可以說-3和9是以12為模的補數(shù)熔任。

補數(shù)的一些概念:

一個正數(shù)和一個負數(shù)互為補數(shù)時褒链,兩數(shù)的絕對值之和稱為模

一個負數(shù)可用它的正補數(shù)來代替,而這個正補數(shù)可以用模加上負數(shù)本身來得到

正數(shù)的補數(shù)為其自身

我們知道4位二進制最多只能表示16個數(shù)字疑苔,這就像時鐘上一圈只能表示12個小時一樣甫匹,因此直觀的就能感知到4位二進制中互為補數(shù)的模一定是16。

有了補數(shù)的概念惦费,就可以將一個負數(shù)轉(zhuǎn)換為它的正補數(shù)兵迅,例如要計算8 - 3可以寫成8 + (-3),將-3轉(zhuǎn)為它的補數(shù)13趁餐,那么最后只需要計算8 + 13的值就可以計算出8 - 3的值喷兼,如果大家不信,我們就來算一算

加法運算

將8和13的二進制相加后雷,結(jié)果為10101季惯,因為我們是四位處理器,結(jié)果溢出臀突,必須丟棄最高位的數(shù)字勉抓,最終結(jié)果為0101,它的十進制結(jié)果正好是5候学,怎么樣藕筋,神奇嗎?

引入負數(shù)

補數(shù)實際上是一種處理帶符號數(shù)的方法梳码,用于變換數(shù)字的符號隐圾。這在計算機中被稱為補碼。我們之前算補數(shù)掰茶,需要借助模暇藏,實際上在計算機中,求補碼有一套簡單的辦法濒蒋,口訣就是取反加一

例如求13的二進制補碼盐碱,那么就先將它的二進制取反,即對1101的每一位取反沪伙,我們前面說過瓮顽,1表示真,0表示假围橡,取反就是邏輯非運算暖混,對1取反自然就變成0了,所以取反后的二進制為0010翁授,然后對取反后的結(jié)果加上1儒恋,最終結(jié)果就是0011善绎,它的十進制就是3,正好與13互為補數(shù)诫尽。

計算機二進制補碼求法你學(xué)會了嗎禀酱?

咱們之前計算的都是正數(shù)的加減運算,有同學(xué)肯定會疑問了牧嫉,那如果引入負數(shù)會如何呢剂跟?

首先要明確一點,如果想表示負數(shù)酣藻,那肯定需要有一位來表示符號曹洽,因此4位二進制中,就只剩下三位有效位了辽剧,表示的正整數(shù)范圍肯定會變小了送淆。假設(shè)我們讓4位二進制的最高位表示符號位,0表示正數(shù)怕轿,1表示負數(shù)偷崩,那么正數(shù)的范圍只能是1~7,負數(shù)的范圍是-8~-1

進位

在計算機中撞羽,負數(shù)的二進制使用它的補碼表示阐斜,而補碼的求法就是取反加一。例如-1的補碼就是1的二進制取反加一诀紊,當(dāng)有符號位時谒出,符號位是不參與取反的,因此就是001取反加一得111

好了邻奠,學(xué)了這么多概念笤喳,趕緊來計算一下4 - 6的結(jié)果吧

加法計算
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市碌宴,隨后出現(xiàn)的幾起案子杀狡,更是在濱河造成了極大的恐慌,老刑警劉巖唧喉,帶你破解...
    沈念sama閱讀 212,816評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異忍抽,居然都是意外死亡八孝,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,729評論 3 385
  • 文/潘曉璐 我一進店門鸠项,熙熙樓的掌柜王于貴愁眉苦臉地迎上來干跛,“玉大人,你說我怎么就攤上這事祟绊÷ト耄” “怎么了哥捕?”我有些...
    開封第一講書人閱讀 158,300評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長嘉熊。 經(jīng)常有香客問我遥赚,道長,這世上最難降的妖魔是什么阐肤? 我笑而不...
    開封第一講書人閱讀 56,780評論 1 285
  • 正文 為了忘掉前任凫佛,我火速辦了婚禮,結(jié)果婚禮上孕惜,老公的妹妹穿的比我還像新娘愧薛。我一直安慰自己,他們只是感情好衫画,可當(dāng)我...
    茶點故事閱讀 65,890評論 6 385
  • 文/花漫 我一把揭開白布毫炉。 她就那樣靜靜地躺著,像睡著了一般削罩。 火紅的嫁衣襯著肌膚如雪瞄勾。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 50,084評論 1 291
  • 那天鲸郊,我揣著相機與錄音丰榴,去河邊找鬼。 笑死秆撮,一個胖子當(dāng)著我的面吹牛四濒,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播职辨,決...
    沈念sama閱讀 39,151評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼盗蟆,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了舒裤?” 一聲冷哼從身側(cè)響起喳资,我...
    開封第一講書人閱讀 37,912評論 0 268
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎腾供,沒想到半個月后仆邓,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,355評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡伴鳖,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,666評論 2 327
  • 正文 我和宋清朗相戀三年节值,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片榜聂。...
    茶點故事閱讀 38,809評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡搞疗,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出须肆,到底是詐尸還是另有隱情匿乃,我是刑警寧澤桩皿,帶...
    沈念sama閱讀 34,504評論 4 334
  • 正文 年R本政府宣布,位于F島的核電站幢炸,受9級特大地震影響泄隔,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜阳懂,卻給世界環(huán)境...
    茶點故事閱讀 40,150評論 3 317
  • 文/蒙蒙 一梅尤、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧岩调,春花似錦巷燥、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,882評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至葱淳,卻和暖如春钝腺,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背赞厕。 一陣腳步聲響...
    開封第一講書人閱讀 32,121評論 1 267
  • 我被黑心中介騙來泰國打工艳狐, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人皿桑。 一個月前我還...
    沈念sama閱讀 46,628評論 2 362
  • 正文 我出身青樓毫目,卻偏偏與公主長得像,于是被迫代替她去往敵國和親诲侮。 傳聞我的和親對象是個殘疾皇子镀虐,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,724評論 2 351

推薦閱讀更多精彩內(nèi)容