匯編程序設(shè)計(jì)與計(jì)算機(jī)體系結(jié)構(gòu):軟件工程師教程》 —2.3 處理器">《匯編程序設(shè)計(jì)與計(jì)算機(jī)體系結(jié)構(gòu):軟件工程師教程》 —2.3 處理器
746
2025-03-31
1.4 數(shù)據(jù)的表示
1.4.1 計(jì)數(shù)系統(tǒng)
多數(shù)計(jì)算機(jī)在物理層面都是以二進(jìn)制的方式來運(yùn)作的。例如,存儲(chǔ)單元(memory cell)的狀態(tài)只有兩種,要么已充電,要么未充電;磁盤中的某個(gè)位置的狀態(tài)也只有兩種,要么已磁化,要么未磁化;CPU 中的晶體管同樣如此,要么允許電流通過,要么禁止電流通過。由此可見,數(shù)據(jù)在底層可以用二進(jìn)制來表示,這種表示方式只使用1與0兩種數(shù)位。但是,該形式對(duì)于人類來說卻比較麻煩,而且理解起來也很慢。因此,我們還會(huì)用其他一些計(jì)數(shù)系統(tǒng)(或者說數(shù)制)來簡記二進(jìn)制數(shù)。
學(xué)習(xí)指南:實(shí)際上,在執(zhí)行機(jī)器語言所寫的代碼時(shí),計(jì)算機(jī)只能采用二進(jìn)制來運(yùn)作。那么,為什么必須用二進(jìn)制呢?
答案是:用二進(jìn)制來表示數(shù)據(jù)并在雙穩(wěn)環(huán)境下運(yùn)行程序,是比較可靠的。
具有下列物理特性的硬件元件,能夠以二進(jìn)制的方式運(yùn)作:
元件有兩種穩(wěn)定的能量狀態(tài)(energy state,能態(tài)),可以分別用 0 與 1 來表示,例如,全開/全關(guān)、完全充電/完全放電、帶正電/帶負(fù)電、已磁化/未磁化、反光/不反光。
兩種狀態(tài)可以為能量壁壘(energy barrier,能壘)所區(qū)隔(也就是說,不會(huì)同時(shí)處于兩種狀態(tài))。
可以感知元件的狀態(tài)。
可以在兩種狀態(tài)之間切換。
假如計(jì)算機(jī)以十進(jìn)制或十六進(jìn)制來計(jì)數(shù),那么要保存數(shù)值就比較復(fù)雜了,因?yàn)橛布仨氁軌虮硎?10 種或 16 種不同的狀態(tài)才行。反之,如果用二進(jìn)制來保存,那么只需要把相應(yīng)的物理性質(zhì)與兩種狀態(tài)對(duì)應(yīng)起來就可以了,對(duì)于大多數(shù)計(jì)算機(jī)來說,這些物理性質(zhì)指的就是元件的電氣性質(zhì)。
要想讀懂并撰寫底層程序代碼,必須熟悉各種計(jì)數(shù)系統(tǒng)與計(jì)數(shù)格式。最常見的幾種格式是:二進(jìn)制、八進(jìn)制、十進(jìn)制、十六進(jìn)制。每種進(jìn)制都有一個(gè)底,它決定了每個(gè)位置上可以使用多少種符號(hào)來計(jì)數(shù)。表1-3詳細(xì)列出了這四種常用的數(shù)制,其中,十進(jìn)制與十六進(jìn)制是匯編代碼中最常見到的形式。
表1-3 常用的數(shù)制
軟件開發(fā)
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。