精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

什么是C語言?單片機有什么特點?為什么要用C語言編程?

玩轉嵌入式 ? 來源:玩轉嵌入式 ? 2023-11-21 10:06 ? 次閱讀

隨著技術的發展,電子產品越來越多,方便了我們的日常生活,大多數電子產品上都有單片機,而單片機是通過執行軟件邏輯來實現功能的。而單片機編程最合適的編程語言是匯編語言,但是最常用、最普及的卻是C語言。單片機為什么要用C語言來編程?

1.什么是C語言

C語言最早是在1972年的時候在DEC PDP-11計算機上首次跑起來的,它的設計者是美國人丹尼斯·麥卡利斯泰爾·里奇,他在貝爾實驗室為UNIX操作系統設計的。后來他和同事共同編寫了C語言編程標準--K&R。沒想到日后C語言會成為廣泛的編程語言并風靡全球。而之所以叫做C語言,是因為它是在B語言的基礎上而設計出來的。

UNIX操作系統、Linux操作系統、MySQL等都是使用C語言編程實現的。

2.單片機有什么特點

單片機是可編程器件,他的控制邏輯是通過軟件來實現的。在單片機之前,控制邏輯是通過純硬件來實現的,受硬件邏輯的約束無法實現太復雜的邏輯。而單片機是有指令集的,最開始通過使用匯編來編程,雖然匯編執行效率非常高,但是匯編的可讀性和移植性非常差,而C語言正好能彌補匯編的不足。

舉例:MOVC  A, @A+DPTR
功能:將 DPTR+A中的值 作為地址,尋找地址中的內容 送到累加器A中

匯編語言舉例

單片機的寄存器配置。對單片機編程其實就是配置單片機的寄存器和端口配置,而這都是具有時許的,需要精準的控制。

單片機存儲和執行程序需要Flash和RAM,而這些資源非常有限。所以,代碼的占用空間情況非常重要。

單片機都是有指令集的。學習過單片機匯編的朋友可能會有印象,8051單片機具有111條指令集,并且有7種不同的尋址方式。

#include 
void bubble_sort(int arr[], int len) {
    int i, j, temp;
    for (i = 0; i < len - 1; i++)
? ? ? ? ? ? ? ? for (j = 0; j < len - 1 - i; j++)
? ? ? ? ? ? ? ? ? ? ? ? if (arr[j] > arr[j + 1]) {
                temp = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = temp;
            }
}
int main() {
    int arr[] = { 22, 34, 3, 32, 82, 55, 89, 50, 37, 5, 64, 35, 9, 70 };
    int len = sizeof(arr) / sizeof(arr[0]);
    bubble_sort(arr, len);
    int i;
    for (i = 0; i < len; i++)
? ? ? ? ? ? ? ? printf("%d ", arr[i]);
? ? ? ? return 0;
}

冒泡排序的C語言實現

3.為什么要用C語言編程

前文所說,單片機的匯編指令比較難記,可能存在兩種情況:1)更換硬件平臺,這要重新適配指令集、更新寄存器訪問地址,比較麻煩;2)換人維護程序,匯編的可讀性比較差需要較長的時間才能理解別人的程序。

而C語言就比較靈活了,正好能彌補匯編的劣勢。

不需要記憶單片機的指令集,只需要通過寄存器的配置就能讓單片機正常工作;

C語言有指針、數組、結構體、聯合體、枚舉等各種類型,大大增強了編程的靈活性和程序處理能力;

C語言方便模塊化編程,可以實現代碼的規范化。

39cfe09c-880b-11ee-939d-92fbcf53809c.png

C語言編程

你用C語言編程嗎?來評論區討論一下吧。

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6022

    文章

    44375

    瀏覽量

    628254
  • Linux
    +關注

    關注

    87

    文章

    11123

    瀏覽量

    207885
  • C語言
    +關注

    關注

    180

    文章

    7576

    瀏覽量

    133994
  • 編程
    +關注

    關注

    88

    文章

    3519

    瀏覽量

    93261
  • 匯編語言
    +關注

    關注

    14

    文章

    406

    瀏覽量

    35567

原文標題:單片機編程,為什么要用C語言

文章出處:【微信號:玩轉嵌入式,微信公眾號:玩轉嵌入式】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    單片機C語言編程應注意的若干問題

    本文較詳細地分析了單片機C 語言特點,就單片機系統資源對C
    發表于 08-25 14:16 ?43次下載

    51單片機C語言編程技巧

    51單片機C語言編程技巧
    發表于 07-16 11:17 ?161次下載

    單片機C語言編程與實例

    單片機C語言編程與實例 學習單片機開發非常不錯的資料。
    發表于 01-11 14:50 ?41次下載

    PIC單片機C語言編程

    PIC單片機C語言編程.pdf
    發表于 12-16 15:44 ?36次下載

    學習AVR單片機C語言編程的方法和教程說明

    AVR單片機是一種新型高效的單片機,主要的編程語言C語言,但與一般的
    發表于 12-30 08:00 ?17次下載
    學習AVR<b class='flag-5'>單片機</b><b class='flag-5'>C</b><b class='flag-5'>語言</b><b class='flag-5'>編程</b>的方法和教程說明

    為什么C語言是最適合單片機編程的高級語言

    單片機為什么還在用C語言編程?答案是:C語言是最適合單片機
    的頭像 發表于 02-03 16:09 ?5093次閱讀

    單片機C語言C語言為什么差異?

    許多小伙伴在學完C語言后想入門單片機,但學著學著發現明明都是C語言,為什么單片機
    發表于 09-01 16:39 ?3670次閱讀

    單片機c語言編程入門教程

    單片機c語言編程入門教程說難不難,說易不易,學習單片機c語言
    的頭像 發表于 07-29 10:39 ?1.9w次閱讀

    1.單片機C語言的關系(5)

    單片機C語言的關系1.單片機一般使用C語言編程2
    發表于 11-10 20:35 ?18次下載
    1.<b class='flag-5'>單片機</b>和<b class='flag-5'>C</b><b class='flag-5'>語言</b>的關系(5)

    單片機c語言+編程c語言_CC ++編程語言什么區別?

    單片機c語言+編程c語言C &
    發表于 11-23 17:51 ?20次下載
    <b class='flag-5'>單片機</b><b class='flag-5'>c</b><b class='flag-5'>語言</b>+<b class='flag-5'>編程</b><b class='flag-5'>c</b><b class='flag-5'>語言</b>_<b class='flag-5'>C</b>和<b class='flag-5'>C</b> ++<b class='flag-5'>編程</b><b class='flag-5'>語言</b><b class='flag-5'>有</b>什么區別?

    為什么C語言是最適合單片機編程的高級語言

    單片機為什么還在用C語言編程?答案是:C語言是最適合單片機
    發表于 11-23 17:51 ?13次下載
    為什么<b class='flag-5'>C</b><b class='flag-5'>語言</b>是最適合<b class='flag-5'>單片機</b><b class='flag-5'>編程</b>的高級<b class='flag-5'>語言</b>

    最適合單片機編程的高級語言,除了C語言,別無選擇!

    單片機為什么還在用C語言編程?答案是:C語言是最適合單片機
    發表于 11-23 17:51 ?0次下載
    最適合<b class='flag-5'>單片機</b><b class='flag-5'>編程</b>的高級<b class='flag-5'>語言</b>,除了<b class='flag-5'>C</b><b class='flag-5'>語言</b>,別無選擇!

    單片機為什么一直用C語言,不用其他編程語言?只有學過的知道!

    單片機為什么還在用C語言編程?答案是:C語言是最適合單片機
    發表于 11-23 17:51 ?11次下載
    <b class='flag-5'>單片機</b>為什么一直用<b class='flag-5'>C</b><b class='flag-5'>語言</b>,不用其他<b class='flag-5'>編程</b><b class='flag-5'>語言</b>?只有學過的知道!

    單片機c語言+編程c語言_C編程語言簡介

    單片機c語言+編程c語言In this tutorial you will get basic
    發表于 11-29 10:21 ?38次下載
    <b class='flag-5'>單片機</b><b class='flag-5'>c</b><b class='flag-5'>語言</b>+<b class='flag-5'>編程</b><b class='flag-5'>c</b><b class='flag-5'>語言</b>_<b class='flag-5'>C</b><b class='flag-5'>編程</b><b class='flag-5'>語言</b>簡介

    為什么單片機要用C語言編程

    近年來,市場對單片機的需求較為旺盛,單片機已經廣泛應用于各個領域,如消費、汽車、家電、工業等等,人們也經常會聽到關于芯片、單片機的討論,那么單片機究竟是什么?芯片和
    發表于 04-11 14:46 ?2433次閱讀