人們總是希望有一名工程師能夠在8位,16位和32位控制器中編程/使用經驗。當我們編程8,16,32位微控制器時,我仍然無法弄清楚是否有巨大的差異?或者在聲明變量方面只是不同...編程微控制器8位,16位,32位時有什麼區別?
回答
類似於Weather Vane的評論。駕駛一輛小型小型汽車,一輛皮卡車,一輛搬運車和一輛半卡車(牽引車 - 拖車)有什麼不同?那麼,他們在很多方面都是一樣的,氣體,剎車,方向盤,座位,門,窗戶,收音機,大燈,所有的東西,你剎車,燃氣和駕駛。你能用智能汽車搬家嗎?嗯,不是所有的東西,雖然你可能可以得到一個小的拖車爲牀和沙發,但你可以一次移動一兩箱,並做出噸的旅行,皮卡減少旅行,半可能一次旅行取決於多少你有的東西。
如果您正在編程像C這樣的高水平,那麼最初它會感覺到相同的氣體,剎車,轉向。但這就像是多次旅行來移動你的東西或幾個或一個。一般來說,你可以用8位處理器做一個64位的數學運算,一個16位數,我們知道一個32位數,因爲我們總是這樣做,而且自然是64位。它只需要更多的行程,你必須將數學分解成幾部分,並一次完成一個部分。自然就像使用你的平板來搬運公寓裏的東西一樣,它比使用卡車需要更多的時間。
剛纔看到有人在這裏使用Microchip PIC上的浮點數,經常看到(浮在微控制器上),如果編譯器有一個庫,它允許人們嘗試它,但它們很快就會用完閃光燈和/或內存和他們的表現是可怕的。
因此,在某些方面,它是關於瞭解變量與您在Windows或Linux上使用的大小不一樣,事情需要更長時間,資源少得多,調試是或可能有點不同,就像脫離大衆汽車的錯誤,這是你駕駛過的唯一的一輛汽車,然後乘坐皮卡車或廂式貨車,每次轉彎時都會夾住路邊石或停放的汽車,無法停在燈光下等等。最終你會習慣它。與移動卡車不同的是,當你搞砸時,你通常不會傷害處理器中的碎片,你可以讓軟件冒出來並確保系統可用,但希望更多的時候程序不會生成或不運行,或者運行速度非常慢,每次都要坐牢,跑過站在角落的行人。
在這個時代(實際上很長一段時間,但現在很平凡),你可以找到各種模擬器/模擬器,你可以試着去感受這些平臺。性能可能不正確,但如果你只有1024字節的RAM和幾K字節的閃存,你會立即感覺到,並想知道爲什麼只有幾行高級代碼消耗這麼多的指令。理解一些事情,比如可能在8位MCU上,我應該使用大多數8位變量,這樣我就不會燒這麼多的代碼(除非編譯器算出來,仍然是浪費),同樣在16位使用大多數16位和32位大多數32位。 (試圖在更大的平臺上「保存」內存實際上會花費更多的週期,如果它沒有本機的指令或者添加額外的指令來做簽名擴展或剪輯),則必須簽署擴展或剪輯每個操作。
- 1. C 8位16位32位編譯器之間的區別
- 2. 8位微處理器上的C - 32位和16位算術
- 3. 16位和32位應用程序的最終區別是什麼?
- 4. 具有32/16位分區的處理器上的64/32位分區
- 5. 爲什麼32位和64位numpy/pandas之間有區別
- 6. .NET在32位或64位系統上有什麼區別?
- 7. 編譯zbar庫的32位微控制器沒有堆
- 8. 在Socket編程中Ubuntu服務器(32位)和桌面(32位)有什麼區別
- 9. 位NASM 16和位32
- 10. 從C語言地址讀取8位或16位或32位
- 11. 8位到16位轉換
- 12. Z3Py:我應該如何表示一些32位; 16位和8位寄存器?
- 13. 繼電器控制器和微控制器有什麼區別?
- 14. 微控制器位字段
- 15. MySQL位與二進制位有什麼區別?
- 16. 我怎樣提取16個8位__m128i值32×4位整數
- 17. 微處理器和微控制器有什麼區別?
- 18. () - >單位和(單位) - >單位類型有什麼區別?
- 19. SIZEOF指針16位和32位
- 20. 16位圖像轉換爲32位
- 21. 將16位轉換爲32位浮點
- 22. Python將32位轉換爲16位tiff
- 23. 如何diffrentiate 16位MZ和32位MZ
- 24. 32位/ 8位和2位補碼在談論整數時意味着什麼?
- 25. 什麼數據類型是32位操作系統中的16位和64位操作系統中的32位?
- 26. 在64位Windows上安裝32位或64位應用程序有什麼區別?
- 27. 爲什麼我不能在8位和16位積分
- 28. 什麼是適合32位和64位「32位」的術語
- 29. 爲什麼printf將8位字符填充爲32位?
- 30. 32位和64位的Java CRC32實現有何區別
駕駛無齒輪助力車和20噸卡車有很大區別嗎?這些技術與現有的設施非常不同。您的示例中的一個明顯區別是,8位處理器無法簡單地執行16位或32位算術運算。我說這是因爲你沒有提到任何高級語言。 –