一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

匯編語言程序的結(jié)構(gòu)_常用匯編語言程序

h1654155282.3538 ? 來源:網(wǎng)絡(luò)整理 ? 作者:佚名 ? 2019-11-11 10:09 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

匯編語言程序的結(jié)構(gòu)

1、順序結(jié)構(gòu)程序

順序結(jié)構(gòu)程序,是按程序順序一條指令緊接一條指令執(zhí)行,是所有程序設(shè)計(jì)中最基本的程序結(jié)構(gòu),是應(yīng)用最普遍的程序結(jié)構(gòu),是實(shí)際編寫程序的基礎(chǔ)。

2、選擇結(jié)構(gòu)程序(分支程序)

選擇結(jié)構(gòu)程序,是指在程序執(zhí)行過程中,依據(jù)條件選擇執(zhí)行不同的分支程序。為實(shí)現(xiàn)程序分支,編寫選擇結(jié)構(gòu)程序時(shí)要合理選用具有判斷功能的指令,如條件轉(zhuǎn)移指令、比較轉(zhuǎn)移指令和位轉(zhuǎn)移指令等。

選擇結(jié)構(gòu)程序允許嵌套,從而形成多級(jí)選擇程序結(jié)構(gòu)。匯編語言不限制嵌套的層數(shù),但過多的嵌套將使程序的結(jié)構(gòu)變得復(fù)雜和臃腫,容易造成混亂。

3、循環(huán)結(jié)構(gòu)程序

循環(huán)是指MCU反復(fù)地執(zhí)行某種相同的操作。從本質(zhì)上講,循環(huán)只是選擇結(jié)構(gòu)程序中的一個(gè)特殊形式而已,但因?yàn)槠渲匾裕蚨?dú)立作為一種程序結(jié)構(gòu)。

在進(jìn)入循環(huán)體之前,需給用于循環(huán)過程的工作單元設(shè)置初值,如循環(huán)控制計(jì)數(shù)初值、地址指針起始地址的設(shè)置、變量初值等,初始化部分是保證循環(huán)正確執(zhí)行所必須的。循環(huán)體是循環(huán)結(jié)構(gòu)的核心,完成實(shí)際的處理工作,在循環(huán)體中也可包括改變循環(huán)變量、改變地址指針等有關(guān)修改循環(huán)參數(shù)的部分。循環(huán)控制部分通過循環(huán)變量和結(jié)束條件控制循環(huán)結(jié)束,有時(shí)修改循環(huán)參數(shù)和判斷結(jié)束條件由一條指令完成,如DJNZ。循環(huán)處理程序的結(jié)束條件不同,相應(yīng)控制部分的實(shí)現(xiàn)方法也不一樣,分循環(huán)計(jì)數(shù)控制和條件控制。

4、子程序結(jié)構(gòu)

子程序是在主程序中通過LCALL、ACALL等指令調(diào)用的程序段,該程序段的第一條指令地址稱子程序入口地址。子程序的最后一條指令必須是RET返回指令,即返回到主程序中調(diào)用子程序指令的下一條指令。

實(shí)際應(yīng)用中,大多數(shù)子程序具有復(fù)雜程度不等的結(jié)構(gòu),主程序調(diào)用的子程序運(yùn)行時(shí)有可能改變主程序中某些寄存器的內(nèi)容,如PSW、A、B、工作寄存器等,這樣就必須先用PUSH指令將相應(yīng)寄存器的內(nèi)容壓入堆棧保護(hù)起來,返回時(shí)再用POP指令將壓入堆棧的內(nèi)容彈回到相應(yīng)的寄存器中。有調(diào)用前在主程序保護(hù)和子程序開頭保護(hù)兩種,相應(yīng)的在主程序恢復(fù)和子程序末尾恢復(fù)。

常用匯編語言程序

1、延時(shí)程序

延時(shí)程序是經(jīng)常使用的程序,一般設(shè)計(jì)成具有通用性的循環(huán)結(jié)構(gòu)子程序。在設(shè)計(jì)延時(shí)子程序時(shí),延時(shí)的最小單位為機(jī)器周期,所以要注意晶振的頻率。

2、碼制轉(zhuǎn)換程序

MCU內(nèi)部進(jìn)行數(shù)據(jù)計(jì)算和存儲(chǔ)時(shí),多采用二進(jìn)制碼;在數(shù)據(jù)的輸入/輸出中,多采用BCD碼。編程中經(jīng)常會(huì)遇到各種碼制的轉(zhuǎn)換問題。

十進(jìn)制數(shù)常用BCD碼表示,BCD碼有兩種形式:一種是一個(gè)字節(jié)放一位BCD碼,適用于顯示或輸出;另一種是壓縮的BCD碼,一個(gè)字節(jié)放兩個(gè)BCD碼,節(jié)省存儲(chǔ)單元。

單字節(jié)二進(jìn)制(或16進(jìn)制)數(shù)轉(zhuǎn)換為BCD碼的一般方法是把二進(jìn)制數(shù)除以100,得到百位數(shù),余數(shù)除以10的商和余數(shù)分別是十位數(shù)、個(gè)位數(shù)。

3、數(shù)據(jù)排序程序

經(jīng)常要對(duì)數(shù)據(jù)進(jìn)行排序,排序的方法有按從小到大的次序和按從大到小的次序排。示例為將放于片內(nèi)RAM的50H~5AH單元中的單字節(jié)無符號(hào)正整數(shù)按從小到大的次序重新排列(冒泡法)。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 匯編語言
    +關(guān)注

    關(guān)注

    14

    文章

    412

    瀏覽量

    36859
  • 匯編語言程序
    +關(guān)注

    關(guān)注

    0

    文章

    6

    瀏覽量

    6445
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    匯編語言程序設(shè)計(jì)pdf

    匯編語言程序設(shè)計(jì)的內(nèi)容:每種高級(jí)語言程序在連接為可執(zhí)行程序之前,都必須被編譯為匯編語言
    發(fā)表于 10-21 17:38 ?0次下載
    <b class='flag-5'>匯編語言</b><b class='flag-5'>程序</b>設(shè)計(jì)pdf

    匯編語言程序設(shè)計(jì)下載

    professional assembly language 匯編語言程序設(shè)計(jì)本書分為三部分。第一部分講解匯編語言程序設(shè)計(jì)環(huán)境基礎(chǔ),第二部分研究匯編
    發(fā)表于 10-21 17:42 ?0次下載
    <b class='flag-5'>匯編語言</b><b class='flag-5'>程序</b>設(shè)計(jì)下載

    匯編語言程序設(shè)計(jì)(PDF)

    匯編語言程序設(shè)計(jì)介紹了IBM PC微型計(jì)算機(jī),基本匯編語言,順序、分支與循環(huán)程序設(shè)計(jì),子程序設(shè)計(jì),數(shù)值運(yùn)算
    發(fā)表于 10-21 18:06 ?0次下載
    宏<b class='flag-5'>匯編語言</b><b class='flag-5'>程序</b>設(shè)計(jì)(PDF)

    匯編語言自學(xué)教程

    匯編語言自學(xué)教程 匯編語言(AssemblyLanguage)是面向機(jī)器的程序設(shè)計(jì)語言。在匯編語合中,用助記符(Memoni)代替操作碼,用地址符號(hào)(Symbol)或標(biāo)號(hào)(Label
    發(fā)表于 03-15 14:24 ?511次下載

    匯編語言程序結(jié)構(gòu)

    實(shí) 驗(yàn)   匯編語言程序結(jié)構(gòu) 一、實(shí)驗(yàn)?zāi)康?nbsp;1.掌握匯編語言程序上機(jī)過程。    2.掌握
    發(fā)表于 09-28 23:11 ?3034次閱讀

    匯編語言程序設(shè)計(jì)實(shí)驗(yàn)

    實(shí)驗(yàn) 匯編語言程序設(shè)計(jì) 一、實(shí)驗(yàn)?zāi)康? 1. 熟悉編寫和調(diào)試語言程序的方法,提高編
    發(fā)表于 09-28 23:24 ?4336次閱讀
    <b class='flag-5'>匯編語言</b><b class='flag-5'>程序</b>設(shè)計(jì)實(shí)驗(yàn)

    Assemble匯編語言設(shè)計(jì)技術(shù)

    匯編語言 設(shè)計(jì)程序,是所有程序語言的基本資源。我們不管你使用除匯編語言或指令代碼以外的程序語言編程,僅僅是編程表達(dá)、編程規(guī)則和變成環(huán)境的變化
    發(fā)表于 07-07 15:47 ?0次下載

    匯編語言學(xué)習(xí)課件_匯編語言程序組織

    第四章 匯編語言程序組織 4.1 匯編語言語句格式 4.2 匯編語言程序結(jié)構(gòu) 4.3 常用
    發(fā)表于 12-31 10:41 ?0次下載

    匯編語言學(xué)習(xí)課件_匯編語言高級(jí)編程技巧

    第八章 匯編語言高級(jí)編程技巧 8.1 模塊化程序設(shè)計(jì) 8.2 匯編語言程序與高級(jí)語言程序
    發(fā)表于 12-31 10:41 ?0次下載

    匯編語言程序設(shè)計(jì)自學(xué)教程

    匯編語言程序設(shè)計(jì)自學(xué)教程,幫助自學(xué)者掌握匯編語言的自行設(shè)計(jì)與編程。
    發(fā)表于 04-06 15:47 ?42次下載

    匯編語言程序設(shè)計(jì)

    匯編語言程序設(shè)計(jì),又需要的可以 下來看看
    發(fā)表于 05-06 15:13 ?0次下載

    匯編語言程序設(shè)計(jì)

    電子專業(yè)單片機(jī)相關(guān)知識(shí)學(xué)習(xí)教材資料——匯編語言程序設(shè)計(jì)
    發(fā)表于 09-01 16:40 ?0次下載

    微機(jī)原理--匯編語言程序設(shè)計(jì)

    微機(jī)原理--匯編語言程序設(shè)計(jì)
    發(fā)表于 12-12 22:07 ?0次下載

    匯編語言結(jié)構(gòu)化設(shè)計(jì)程序教程

    匯編語言結(jié)構(gòu)化設(shè)計(jì)程序教程說明。
    發(fā)表于 03-26 09:38 ?24次下載

    單片機(jī)匯編語言結(jié)構(gòu)/數(shù)據(jù)類型/匯編指令

    開發(fā)匯編語言是為了為機(jī)器級(jí)代碼指令提供助記符或符號(hào),匯編語言程序由助記符組成,因此應(yīng)將它們翻譯成機(jī)器代碼。負(fù)責(zé)這種轉(zhuǎn)換的程序稱為匯編程序。
    的頭像 發(fā)表于 07-07 12:28 ?3624次閱讀