當前位置:才華齋>計算機>C語言>

c語言如何控制硬體

C語言 閱讀(3.17W)

你們知道在C語言中如何控制計算機的硬體嗎?下面是應屆畢業生小編帶來的關於c語言如何控制硬體的內容,歡迎閱讀!

c語言如何控制硬體

 c語言如何控制硬體?

C語言是沒辦法控制硬體的

首先,C語言不能夠直接對硬體進行操作。從本質上來說,連組合語言都不可以。只有機器語言能夠直接操作硬體。

其次,C語言要操作硬體是必須經過一系列的編譯轉換。最終它會成為0101的`機械碼,這個時候它根本不是我們所能夠理解的C語言了。

以GCC編譯器為例,這個可以分為四步。

第一步是預處理,包括語法檢查等工作。

gcc -P abc.c

第二步由源程式生產組合語言程式碼。

gcc -S abc.c

會生成abc.s檔案,這個檔案裡就是彙編程式碼。

第三步編譯器生成目標程式碼,一個原始檔生成一個目的碼。

gcc -c abc.c

會生成abc.o

第四步聯結器從目的碼生成可執行檔案。

gcc abc.o

最後,相對來說,C語言在高階語言當中是最貼近物理層面的語言。它也被稱作高階語言裡面的低階語言。因為它很多方面都非常貼近硬體。典型的就是指標,這是一種通過實體地址直接操作記憶體的變數。

如果是電腦程式的話,譬如你在vc6.0裡面c語言裡面編寫一個程式,那麼vc6裡面的編譯器會把你的c語言語句按照對應的關係翻譯成你計算機能識別的計算機語句,然後你電腦cpu會按照這些指令來控制你的硬碟,記憶體讀寫之類的硬體操作。

如果是微控制器之類的話,譬如你在keil裡面用c語言編寫了一個微控制器程式,那麼keil的編譯器會把你的c語言程式編寫成組合語言程式檔案,然後把那個彙編程式檔案燒到微控制器晶片上就可以讓晶片按照指令工作了。