匯編語(yǔ)言:在內(nèi)存中定義一組給定數(shù)none 符號(hào) numbers,單片機(jī)編程:8個(gè)none 符號(hào) numbers的平均值,存儲(chǔ)在內(nèi)部ram中20 h,然后保存在r 2程序:MOV。并說(shuō)明這個(gè)數(shù)據(jù)segment單元中有多少字節(jié)...所謂內(nèi)部數(shù)據(jù)內(nèi)存就是單片機(jī)內(nèi)部集成的數(shù)據(jù)內(nèi)存,因?yàn)閱纹瑱C(jī)的內(nèi)部數(shù)據(jù)總線(xiàn)。
2和05H中斷向量存儲(chǔ)在14H的中斷向量表中。3.數(shù)據(jù)in storage單元:datasegmentbuf 1:521000 buf 3:3412 feff buf 4:常量只能和指令一起存放在代碼段buf 5中。已知10個(gè)8位none 符號(hào)數(shù)存儲(chǔ)在以BUF地址為頭的數(shù)據(jù)區(qū),通過(guò)編程計(jì)算出最大值,存儲(chǔ)在BIG 單元(需要完整源程序)DatasegmentBUFDB125中。
32,253,100,88,66,78,201,127BIGDB?DataEndsCodesegmentassumecs:Code,ds:Datastart:movax,Datamovds,axmovcx,9leasi,bufcldlodsbberce:cmpal,. model small . stack 200h . datanum 1 dw 123,12666,38,28,83,178,12.CODESTART:MOVAX,@DATAMOVDS,AXLEASI,NUM1MOVDI,506H顯示屏MOVCX的偏移地址,10;數(shù)據(jù)segment 10數(shù)據(jù)call unshin I,Num1movcx,10;數(shù)據(jù)paragraph 10數(shù)據(jù)CALLSORTLEASI,
646H顯示屏MOVCX的偏移地址,10;10數(shù)據(jù)segment數(shù)據(jù)calldispmoax,4c00hint21hSORT:DECCXS0:PUSHCXMOVDI,SIS1:MOVAX,stacksegmentstackbyte 256 dup(0)stackendsdatasegmentc1 dw 0;奇數(shù)C2dw0偶數(shù)SUMEVENdw0BUFFdb10,0;10 數(shù)據(jù)存儲(chǔ)緩沖區(qū),BUFFDATASEGMENTNUM1DDH設(shè)置一個(gè)32位數(shù)作為加數(shù)。加的時(shí)候先加低16位,再加高16位NUM2DDH設(shè)置另一個(gè)32位數(shù)字作為加數(shù)。NUM3DD?保存32位和數(shù)據(jù)endscodesgement假設(shè):code,ds: datastart: movax,datamovds,axleasi,num1lead I,
Num3movax,org 0000 hljmpmainorg 0030h main:mova,20hcjnea,30h,bu _ Deng//等于ljmpadayubu _ Deng:jncdayuxiaoyu://小于CLRP1.1LJMPL_enddayu://大于clrp1.0ljmpl _ endl _ end:。
2、匯編語(yǔ)言:在內(nèi)存定義一組給定個(gè)數(shù)的無(wú) 符號(hào)數(shù),試編程尋找其中的最大值...proc max;條目參數(shù):SI是數(shù)據(jù)首地址,CX是號(hào)碼pushsi退出參數(shù):AX為最大值,BX為其地址pushcxxorax,axmovebx,Simovdx,axstdnext1: lodswcmpax,dxjcnlmovedx,axmovebx,Sinl: loopnext1moax,dxpopcxpopsiretendp。
89,100,45,30,39,99;定義10 數(shù)據(jù)MAXDB?;最大存儲(chǔ)數(shù)據(jù)數(shù)假設(shè):code,ds: datastart: movax,datamovds,axmovcx,10 leabx,arraymoval,0 next: cmpal,8 No 符號(hào) number存儲(chǔ)在內(nèi)部RAM中20h,8 單元 node保存在r 2程序中:movr0,# 20h movr1,# 8movr2,# 0movr3,# 0loop: movaAnla,# 0F8Hadda,R2LAS $ END內(nèi)部RAMLIST 單元開(kāi)始存儲(chǔ)組單字節(jié)tape符號(hào)Number數(shù)據(jù)Length 30。找出大數(shù)并存儲(chǔ)在程序中:MOVBIG,
3、定義 數(shù)據(jù)段如下,畫(huà)出 數(shù)據(jù)存儲(chǔ)示意圖,并說(shuō)明該 數(shù)據(jù)段共有多少個(gè)字節(jié) 單元...所謂內(nèi)部數(shù)據(jù) memory就是微控制器中集成的數(shù)據(jù) memory。因?yàn)槲⒖刂破鞯膬?nèi)部數(shù)據(jù) bus是8位,所以它的尋址范圍只有00H~FFH。這個(gè)內(nèi)存也分為兩部分:00H~7FH:直接尋址區(qū):也叫數(shù)據(jù)區(qū)。在C語(yǔ)言中定義一個(gè)變量時(shí),添加關(guān)鍵字data來(lái)修改它,那么這個(gè)變量就存在于這個(gè)區(qū)域中。這個(gè)領(lǐng)域可以直接解決。比如MOVA,30H將30H 單元的內(nèi)容復(fù)制到a。
你可能會(huì)覺(jué)得奇怪,R0~R7只有8個(gè)字節(jié),而這個(gè)區(qū)域有32個(gè)字節(jié)。實(shí)際上,這個(gè)段區(qū)分為四組,每組8個(gè)字節(jié),程序同時(shí)使用的R0~R7只占這四組中的一組。其他24個(gè)字節(jié)用作普通內(nèi)存,使用哪一組由PSW寄存器中的RS0和RS1位決定??赡苣銜?huì)覺(jué)得設(shè)計(jì)這個(gè)單片機(jī)的人不是找泵的,沒(méi)啥事。