單片機(jī)原理:4-3-3-4匯編語言程序設(shè)計舉例-關(guān)鍵字-極值查找_第1頁
單片機(jī)原理:4-3-3-4匯編語言程序設(shè)計舉例-關(guān)鍵字-極值查找_第2頁
單片機(jī)原理:4-3-3-4匯編語言程序設(shè)計舉例-關(guān)鍵字-極值查找_第3頁
單片機(jī)原理:4-3-3-4匯編語言程序設(shè)計舉例-關(guān)鍵字-極值查找_第4頁
單片機(jī)原理:4-3-3-4匯編語言程序設(shè)計舉例-關(guān)鍵字-極值查找_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

第4章AT89S51匯編語

言程序設(shè)計

14.3.3關(guān)鍵字查找程序設(shè)計在表中查找關(guān)鍵字的操作,也稱為數(shù)據(jù)檢索。有兩種方法,即順序檢索和對分檢索。1.順序檢索要檢索的表是無序的,檢索時只能從第1項開始逐項查找,判斷所取數(shù)據(jù)是否與關(guān)鍵字相等?!纠?-6】從50個字節(jié)的無序表中查找一個關(guān)鍵字“xxH”..\范例\exp4-6流程圖關(guān)鍵字查找.imxORG 1000HMOV 30H,#xxH

;關(guān)鍵字xxH送30H單元MOV R1,#50 ;查找次數(shù)送R1MOV A,#14H ;修正值送AMOVDPTR,#TAB4 ;表首地址送DPTR2LOOP: PUSHAcc MOVCA,@A+PC ;查表結(jié)果送A CJNEA,30H,LOOP1;(30H)不等于關(guān)鍵字則轉(zhuǎn)LOOP1 MOVR2,DPH ;查到關(guān)鍵字,把地址送R2,R3 MOVR3,DPL DONE:

RETLOOP1:POP Acc ;修正值彈出 INC A ;A+1→A INC DPTR ;修改數(shù)據(jù)指針DPTR DJNZR1,LOOP ;R1≠0,未查完,繼續(xù)查找 MOV R2,#00H ;R1=0,R2和R3清0 MOV R3,#00H ;表中50個數(shù)已查完 AJMP DONE ;從子程序返回

TAB4: DB …,…,…

;50個無序數(shù)據(jù)表32.對分檢索對分檢索的前提是檢索的數(shù)據(jù)表已經(jīng)排好序,以便于按照對分原則取數(shù)。如何進(jìn)行數(shù)據(jù)排序,稍后介紹。對分檢索的方法:取數(shù)據(jù)表中間位置的數(shù)與關(guān)鍵字進(jìn)行比較,如相等,則查找結(jié)束。如果取數(shù)大于關(guān)鍵字,則下次對分檢索的范圍是從數(shù)據(jù)區(qū)起點到本次取數(shù)處。如果取數(shù)小于關(guān)鍵字,則下次對分檢索的范圍是從本次取數(shù)數(shù)據(jù)區(qū)起點到數(shù)據(jù)區(qū)終點。依此類推,逐漸縮小檢索范圍,減少次數(shù),大大提高查找速度。44.3.4數(shù)據(jù)極值查找程序設(shè)計(略)進(jìn)行數(shù)值大小的比較,從一批數(shù)據(jù)中找出最大值(或最小值)并存于某一單元中?!纠?-7】片內(nèi)RAM中存放一批數(shù)據(jù),查找出最大值并存放于首地址中。設(shè)R0中存放首地址,R2中存放字節(jié)數(shù),程序框圖見圖4-1。程序如下:..\范例\exp4-7

MOV R2,n ;n為要比較的數(shù)據(jù)字節(jié)數(shù) MOV A,R0 ;存首地址指針

MOV R1,A DEC R2 MOV A,@R15LOOP: MOV R3,

A DEC R1 CLR C SUBBA,@R1 ;兩個數(shù)比較 JNC LOOP1 ;C=0,A中數(shù)大,跳LOOP1 MOVA,@R1 ;C=1,則大數(shù)送A SJMPLOOP2LOOP1:MOV A,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論