成人AV在线无码|婷婷五月激情色,|伊人加勒比二三四区|国产一区激情都市|亚洲AV无码电影|日av韩av无码|天堂在线亚洲Av|无码一区二区影院|成人无码毛片AV|超碰在线看中文字幕

入口參數(shù)和出口參數(shù) 在匯編語言程序設(shè)計(jì)中,主程序與子程序之間進(jìn)行參數(shù)傳遞的方法有哪些?

在匯編語言程序設(shè)計(jì)中,主程序與子程序之間進(jìn)行參數(shù)傳遞的方法有哪些?在匯編語言中,有幾種方法可以在主程序和子程序之間傳遞參數(shù):1。寄存器方法寄存器方法是將進(jìn)入?yún)?shù)和退出參數(shù)存儲(chǔ)在約定的寄存器中。優(yōu)點(diǎn):數(shù)

在匯編語言程序設(shè)計(jì)中,主程序與子程序之間進(jìn)行參數(shù)傳遞的方法有哪些?

在匯編語言中,有幾種方法可以在主程序和子程序之間傳遞參數(shù):1。寄存器方法寄存器方法是將進(jìn)入?yún)?shù)和退出參數(shù)存儲(chǔ)在約定的寄存器中。優(yōu)點(diǎn):數(shù)據(jù)傳輸,讀取速度快,編程方便,節(jié)省存儲(chǔ)單元。缺點(diǎn):當(dāng)傳遞的參數(shù)太多時(shí),寄存器數(shù)量有限,并且寄存器使用頻繁,這將導(dǎo)致寄存器不足。應(yīng)用:參數(shù)較少的子程序2。傳統(tǒng)的單元方法:顧名思義,入口和出口參數(shù)被放置在預(yù)定的單元中。優(yōu)點(diǎn):無需寄存器,參數(shù)任意多,待處理數(shù)據(jù)獨(dú)立存儲(chǔ)單元,各子程序可發(fā)送結(jié)構(gòu)。缺點(diǎn):使用一定數(shù)量的存儲(chǔ)單元增加了編程中變量定義的難度。三。Stack方法Stack方法使用Stack傳遞參數(shù)。優(yōu)點(diǎn):參數(shù)不占用寄存器和內(nèi)存單元。參數(shù)存儲(chǔ)在公共堆棧區(qū)域,并在處理后恢復(fù)。一般來說,參數(shù)的數(shù)目是不受限制的。但是,由于參數(shù)和子程序是混合在一起的,因此在訪問參數(shù)時(shí)需要仔細(xì)計(jì)算其在堆棧中的位置。注意斷點(diǎn)的存儲(chǔ)和恢復(fù)。4地址表法這種方法是把一個(gè)由參數(shù)組成的參數(shù)表放在一個(gè)存儲(chǔ)區(qū)內(nèi),然后只要主程序和子程序在第一個(gè)地址和存儲(chǔ)區(qū)的內(nèi)容上達(dá)成一致,主程序就會(huì)把這些參數(shù)傳遞給地址表,子程序就可以按此順序完成操作地址表中給定的參數(shù)。

匯編語言中子程序可以調(diào)用子程序嗎?

當(dāng)然,匯編語言子程序可以調(diào)用其他子程序。在編程時(shí),引入子程序的主要目的是減少重復(fù)代碼,使其易于閱讀,并使過程清晰。示例如下:主:MOV A,#0費(fèi)莫夫R2,#8循環(huán):LCALL KEYSCANJB00h,loop1mov P0,ARL amov R7,lcalldelaysjmp looploop1:RR amov R7,lcalldelaysjmp loopkeyscan:鍵檢測(cè)子程序JB P1.0,鍵無鍵退出mov R7,?20延遲子程序通過參數(shù)lcall delay調(diào)用延遲子程序JNB P1.0,$等待鍵解除CPL 00h,并且密鑰處理位00h被反轉(zhuǎn)鍵:RETDELAY:MOV R3,#250DJNZ R3,$DJNZ R7,延遲終止