五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

代碼是如何驅(qū)動硬件的?

2022-04-02 21:07 作者:甬上逍遙子  | 我要投稿

代碼是如何驅(qū)動硬件的

CPU有其自己的語言系統(tǒng),它只能識別二進(jìn)制代碼,我們稱之為機(jī)器語言,它全部由0或1組成。


1、源代碼的編譯/解釋

源代碼的編譯和解釋就是把使用高級語言編寫的源程序翻譯成等效大的二進(jìn)制代碼,也就是CPU能夠識別的機(jī)器語言。

編譯或解釋他們的操作方法不同,運(yùn)行的效果也不同、但是最終的結(jié)果都是二進(jìn)制代碼。

我們的代碼經(jīng)編譯之后,在CPU看來,就是一組特定的高低電平的組合。具體到單片機(jī)的開發(fā)中。

我們的源程序如何被單片機(jī)識別,

我們使用keil軟件編寫源程學(xué),經(jīng)過編譯之后生成HEX文件。打開這個文件,打開這個文件,該文件以行為單位。(看圖2),每行以冒號開頭,內(nèi)容全被為16進(jìn)制代碼。

16進(jìn)制代碼和機(jī)器語言中的二進(jìn)制代碼有什么區(qū)別呢?

16進(jìn)制轉(zhuǎn)換成二進(jìn)制代碼不是機(jī)器語言。

16進(jìn)制代碼的每一個字節(jié)都有其特定的含義。比如數(shù)據(jù)長度,起始地址、數(shù)據(jù)類型等信息。并非機(jī)器語言。

為什么不直接生成二進(jìn)制代碼?

HEX代碼子彈校驗(yàn)位,在編譯的時候能檢驗(yàn)代碼是否有誤,能夠?yàn)榇a的傳輸、存儲帶來便利。而二進(jìn)制代碼卻沒有這個功能。

通過程序燒寫,把16進(jìn)制代碼轉(zhuǎn)換成二進(jìn)制代碼。這樣CPU(單片機(jī))就能識別了。

圖1

圖2

圖3

圖4

2、CUP是海量三極管的組合。

可以把CPU看作是海量的開關(guān)組合。這個開關(guān)由三極管組成。

我們追溯計(jì)算機(jī)的發(fā)展歷史人類的第一臺萬用型計(jì)算機(jī)馬克一號,它擁有三千多汁繼電器,這也是它的核心零部件。所以它也被稱作為繼電器計(jì)算機(jī)。繼電器在這臺計(jì)算機(jī)中的作用就是開關(guān)。而現(xiàn)在我們使用三極管來代替它,它們的原理也是一樣的。

圖5

CPU是由工程師精心設(shè)計(jì)的。且規(guī)模龐大的開關(guān)組。當(dāng)給這個開關(guān)組輸入一組特定的高低電平組合時就會導(dǎo)致其內(nèi)部出現(xiàn)復(fù)雜的開關(guān)動作。最終產(chǎn)生另一種高低電平的組合作為輸出。輸出的電平經(jīng)過放大電路,模數(shù)轉(zhuǎn)換電路等變換之后,就可以驅(qū)動相應(yīng)的硬件動作了。

圖6



代碼是如何驅(qū)動硬件的?的評論 (共 條)

分享到微博請遵守國家法律
九龙城区| 康保县| 吉木乃县| 扶绥县| 方城县| 渭源县| 厦门市| 金门县| 祁阳县| 天等县| 普格县| 潞西市| 彭水| 客服| 兴海县| 英吉沙县| 广西| 平罗县| 湾仔区| 丰原市| 浪卡子县| 镇康县| 西林县| 桐柏县| 神农架林区| 宝鸡市| 定日县| 深水埗区| 大安市| 会泽县| 葵青区| 桐城市| 突泉县| 西贡区| 华池县| 玛沁县| 大姚县| 远安县| 香河县| 定边县| 易门县|