在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

學習開發環境和編程語言:匯編語言和C語言的比較

h1654155971.7688 ? 來源:未知 ? 作者:李倩 ? 2018-04-10 09:01 ? 次閱讀

今天來學習開發環境和編程語言。

CPU懂的機器語言

單片機的CPU從存儲器讀取程序,但是一次只能讀取一條指令,然后解釋每條指令,并執行。存儲器中保存的內容,不管是程序還是數據,都是二進制代碼“0”和“1”組成的字符串。指令二進制代碼告訴CPU要做什么,而數據二進制代碼則是CPU操作或處理指令時要使用的值。CPU的操作包含加、減運算等指令。這些像密碼一樣排列的“0”和“1”字符串就是機器語言。比如圖1左邊顯示的就是一個機器語言指令,意思是“將2放入寄存器A(寄存器是CPU內部的儲存區域)。

CPU總是按存儲器地址的順序讀取指令代碼,除非遇到跳躍指令。例如,如果復位后的地址是0000,則從0000開始按0001、0002、0003的順序讀取并執行指令。也可以說,一個程序就是按處理要求排列一系列的機器語言。

CPU只能理解如上所述的機器語言。因此,為了使CPU運行,就必須使用機器語言的程序。但是,機器語言不易為人們識別和讀寫。因此,人們用了更簡單易懂的字符串來代替機器語言,這就是匯編語言。例如,在“給寄存器A賦值2”這樣的處理時,如果用匯編語言來表示,就很簡單,請看圖1的右邊部分。匯編語言中,用MOV字符串表示賦值,所以“給寄存器A賦值2”的處理就可用“MOV A,#02”表示。

圖1:機器語言和 匯編語言的比較

雖然匯編語言比機器語言更加簡單易懂了,但是人們讀起來還是挺難理解的。而且,匯編語言還存在另一個問題,就是不同的CPU,機器語言的描述方式也不同。因此,如果更換了CPU,就必須改寫與機器語言有著密不可分關系的匯編語言,工作量比較大。(以上例子中的機器語言和匯編語言均為瑞薩的RL78族單片機中的語言。)

如上所述,每更換一次CPU都必須對程序進行改編,不但造成生產性低下,還加重了編程人員的負擔。

人性化的C語言

能夠解決上述問題的編程語言就是C語言。C語言具有不依存于特定的CPU,又具有程序移植性高等的特點。另外,由于編程時可使用人們熟悉的英文單詞,所以對編程人員來說C語言是最容易使用的編程語言。下面我們將C語言和匯編語言做一個簡單地比較。

圖2:匯編語言和C語言的比較

雖然C語言不依存于CPU而且還是人們最容易使用的編程語言,但對于CPU來說,C語言卻是一種完全無法理解的語言。因此,就需要一種可以將C語言翻譯為機器語言的軟件,這就是被稱為編譯器 (編譯程序) 的軟件。 經過編譯器翻譯的程序的文件格式被稱為目標文件格式。如果目標文件格式最終沒有被配置到存儲器中,CPU就無法執行該程序。

另外,近來由于程序越來越趨于復雜化,所以幾乎都采取了將一個程序分割為多個C語言程序文件的結構。所以,還需要一個工具將多個目標文件格式匯總成一個機器語言并配置到存儲器上,能夠擔當起此重任的就是連接編輯程序(linkage editor,也被稱為“linker(鏈接器)”)。

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

    關注

    68

    文章

    10911

    瀏覽量

    213139
  • C語言
    +關注

    關注

    180

    文章

    7615

    瀏覽量

    137827
  • 匯編語言
    +關注

    關注

    14

    文章

    410

    瀏覽量

    35971

原文標題:為什么原來每換一個CPU就必須改寫程序,但現在不用了?

文章出處:【微信號:weixin21ic,微信公眾號:21ic電子網】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    MSP430單片機C語言和匯編語言混合編程

    `為了發揮C語言和匯編語言各自的優點,二者需要相互調用函數。本文首先介紹了MSP430單片機的C語言函數的參數傳遞規則,然后對
    發表于 03-02 11:07

    請問C語言和匯編語言進行單片機設計那個比較好?

    大家根據自己切身學習和工作經驗,談談對單片機的程序設計,C語言和匯編語言哪個比較好用?各有什么優缺點?
    發表于 03-11 04:48

    C語言和匯編語言的優缺點是什么?

    什么是c語言?什么是匯編語言?C語言和匯編語言的優缺點是什么?
    發表于 10-14 08:48

    單片機C語言和匯編語言的混合編程

    第5章單片機C語言和匯編語言的混合編程第5章單片機C語言和
    發表于 01-25 06:47

    MSP430單片機C語言和匯編語言混合編程

    為了發揮C語言和匯編語言各自的優點,二者需要相互調用函數。本文首先介紹了MSP430單片機的C語言函數的參數傳遞規則,然后對
    發表于 08-31 10:55 ?50次下載

    MDP430單片機語言和匯編語言混合編程

    摘要:為了發揮C語言和匯編語言各自的優點二者需要相互調用函數本文首先介紹了"MSP430”單片機的!語言函數的參數傳遞規則然后對C
    發表于 07-15 12:02 ?46次下載

    C語言和匯編語言混合編程方法和C語言中斷處理方法

    C語言和匯編語言混合編程方法和C語言中斷處理方法,new
    發表于 01-06 14:36 ?36次下載

    基于MSP430單片機C語言和匯編語言混合編程

    基于MSP430單片機C語言和匯編語言混合編程
    發表于 10-12 17:05 ?18次下載
    基于MSP430單片機<b class='flag-5'>C</b><b class='flag-5'>語言和</b><b class='flag-5'>匯編語言</b>混合<b class='flag-5'>編程</b>

    MSP430單片機的C語言和匯編語言混合編程

    MSP430單片機的C語言和匯編語言混合編程
    發表于 10-13 08:35 ?24次下載
    MSP430單片機的<b class='flag-5'>C</b><b class='flag-5'>語言和</b><b class='flag-5'>匯編語言</b>混合<b class='flag-5'>編程</b>

    C語言匯編語言相互結合的嵌套匯編語言

    要提高單片機技能,必須掌握C 語言編程,因為C 語言有強大的模塊化管理思想。我想在很多人學習的過
    發表于 03-14 18:23 ?3580次閱讀
    <b class='flag-5'>C</b><b class='flag-5'>語言</b>與<b class='flag-5'>匯編語言</b>相互結合的嵌套<b class='flag-5'>匯編語言</b>

    高級語言和匯編語言_機器語言的區別

    本文首先介紹了高級語言的優缺點、匯編語言的優缺點及使用匯編語言的理由,其次介紹了機器語言的優缺點,最后闡述了高級語言和
    的頭像 發表于 04-16 10:28 ?3w次閱讀

    MSP430單片機的C語言和匯編語言混合編程的詳細描述和應用實例

    為了發揮C語言和匯編語言各自的優點,二者需要相互調用函數。本文首先介紹了MSP430單片機的C語言函數的參數傳遞規則,然后對
    發表于 02-22 17:06 ?20次下載
    MSP430單片機的<b class='flag-5'>C</b><b class='flag-5'>語言和</b><b class='flag-5'>匯編語言</b>混合<b class='flag-5'>編程</b>的詳細描述和應用實例

    單片機C語言和匯編語言混合編程實例詳解

    單片機C語言和匯編語言混合編程實例詳解
    發表于 08-16 09:50 ?227次下載

    "單片機r6/r7c語言怎么用,第5章MCU混合編程C語言和匯編語言"

    第5章單片機C語言和匯編語言的混合編程第5章單片機C語言和
    發表于 11-30 19:36 ?14次下載
    "單片機r6/r7<b class='flag-5'>c</b><b class='flag-5'>語言</b>怎么用,第5章MCU混合<b class='flag-5'>編程</b>與<b class='flag-5'>C</b><b class='flag-5'>語言和</b><b class='flag-5'>匯編語言</b>"

    單片機匯編語言和c語言的區別是什么

    單片機從誕生到現在,經過了將近70年的發展。眾所周知,單片機是可以通過編寫程序實現產品的功能,這么多年來,單片機的規格并沒有多大變化,而單片機編程一般使用的都是匯編語言和c語言。那么,
    發表于 06-21 16:59 ?6713次閱讀
    主站蜘蛛池模板: 国产在线a不卡免费视频 | 久久精品国产清自在天天线 | 国模娜娜扒开嫩木耳 | 久久99精品久久久久久臀蜜桃 | 十三以下岁女子毛片免费播放 | 日日干天天操 | 一级黄色录像毛片 | 性感美女福利视频 | 韩国三级在线视频 | 四虎影院永久网址 | 五月天丁香婷婷网 | 伊人久久成人成综合网222 | 三级黄色a | 欧美成人自拍视频 | 亚洲三级在线 | 午夜在线观看完整高清免费 | 一级特黄aa大片免费播放视频 | 色吧视频 | 天堂中文在线免费观看 | 五月亭亭激情五月 | 永久精品免费影院在线观看网站 | 1024在线观看你懂的 | 丁香五月欧美成人 | 亚洲色图日韩精品 | 国产成人精品男人的天堂538 | 欧美操穴视频 | 女性私密部位扒开的视频 | 人人添人人澡人人澡人人人爽 | 麦克斯奥特曼在线观看 | 操片免费 | 亚洲一区二区精品推荐 | 人人狠狠综合88综合久久 | 日本一区二区三区四区视频 | 一区二区三区精品视频 | 美女扒开尿口给男人桶动态图 | 黄色视屏在线免费播放 | 欧美特黄一区二区三区 | 国产v精品成人免费视频400条 | 788gao这里只有精品 | 久久波多野结衣 | 午夜免费体验 |