




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
聯(lián)航嵌入式精英版本日期 12-16Allen信日更新內(nèi)目第一部分ARM體系結(jié) 實驗:熟悉RealViewMDK開發(fā)環(huán) RealView的使 編譯及調(diào) 實驗:ARM匯編子程序調(diào) 實驗:C語言中內(nèi)嵌匯 附錄一、ARM匯編指令 附錄二、ARM匯編偽指令 第一部分ARM體系RealViewMDKRealViewMDKRealViewMDKRealViewMDKKeil公司,被全球超過10萬的嵌入式開發(fā)工程師驗證和使用,是ARM公司目前推出的對各種嵌入式處理器的軟件開發(fā)工具。RealViewMDK集成了業(yè)內(nèi)最領(lǐng)先的技術(shù),包括μVision4集成開發(fā)環(huán)境與RealView編譯器,支持ARM7、ARM9和的Cortex-M3核處理器,自動配置啟動代碼,集成Flash燒寫模SimulationARM之前的工具包ADS等相比,RealView編譯器的版本可將性能改善超過20%。RealViewMDK菜鳥的飛毯 Cortex-M3支持業(yè)界最優(yōu)秀的編譯 Flash編程模塊 — 高性價 ,本土價格RealView的使在彈出的框中,打開上述步驟中建立的UGtest,作為工程文件的保存UGtest,點擊保選擇處理器,這里我們選擇Samsung->S3C2440,然后點擊OK選擇好處理器后,μVision4會為我們建立針對該處理器的啟動引導(dǎo)代碼,S3C2440μVision4工程的建立,在我們μVision可以設(shè)置目標(biāo)硬件的選項。通過按鈕或Project->OptionsforTarget菜單項打開OptionsforTarget框,在Target頁中設(shè)置目標(biāo)硬件及所選CPU片上組件的參數(shù)??梢粋€通過快捷菜單中的按鈕打開。Target框描器都使用片上PLL產(chǎn)生CPU時鐘。所以,一般情況下CPU的時鐘與XTAL的頻率是不同的。Read/OnlyMemoryCodeARMcodeThumb配置Micro2440這里我們設(shè)置RO和RW內(nèi)存起始位置以及大小,由于Micro2440使用的是片外SDRAM,因此需要設(shè)置在“off-chip”下。這里我們設(shè)置RO區(qū)域的開始地址為0x ,這個地址是S3C2440處理器內(nèi)存映射中的SDRAM起始地址,大小為0x (16MB)。RW區(qū)域類似,起始地址為 ,大小為0x 框 描配置Flash下面對工程頁面中的其他選項進行配置,設(shè)置 下建立Objs “SelectFolderforObjects…”按鈕選中這個 ListingOutput類似,在源碼下建立Lists,通過“SelectFolderforListings…”設(shè)置。/*Ext_RAM.INI:ExternalRAM(SDRAM)Initialization/*Ext_RAM.INI:ExternalRAM(SDRAM)Initialization //<<<UseConfigurationWizardin /*ThisfileispartoftheuVision/ARMdevelopment/*Copyright(c)2005-2008KeilSoftware.All /*Thissoftwaremayonlybeusedunderthetermsofavalid,/*enduserlicencefromKEILforacompatibleversionofKEILFUNCvoidSetupForStart(void)//<o>ProgramEntryPointPC=0x }FUNCvoidInit(void) ,
//DisableAll//DisableWatchdog//Clock
////////////MemoryControllerSetupfor , C, , , , C, , ,}
////////////////Resetchipwithwatchdog,becausenRSTlineisroutedonhardwareina//thatitcannotbepulledlowwith CPSR=0x000000D3;PC= , g,
//LoadRAMaddr0withbranchto//Disable//PositionPCtostartof//Enable//WaitforWatchdogtoreset //InitializeLOADobjs\UGtest.axfINCREMENTAL //Downloadprogram //SetupforRunningg, //Gotooutput選項中“NameofExecutable”屬性中的名稱一致。在源碼下建立一個名為EXT_RAM.ini文件,將上面的代碼到該文件中,并將該文件導(dǎo)入到工程中。Utilities添加一個新的Group可以使用新建或者導(dǎo)入的方式,創(chuàng)建和使用源代碼。我們在工程下建立Src用來存放源代碼,為了測試我們導(dǎo)入一個Micro2440開發(fā)板LED燈的源碼led.c文件。 下的led.c文編譯及調(diào)一般來說,在新建一個應(yīng)用程序的時候Options->Target頁中的所有的工具和屬性都要配置。單擊BuildTarget(F7)按鈕將編譯所有的源文件,應(yīng)用程序。當(dāng)編譯有語法錯誤的應(yīng)用程序時,μVision4OutputWindow->Build窗口中顯示錯誤和警告信息。單擊這些信息行,μVision將Debug->Start/StopdebugsessionCtrlF5)有有關(guān)調(diào)試的操作都可以在Debug菜單下找到。常用的調(diào)試F10F5ARM7種模式下的寄存器,都可以查看。當(dāng)處理器處于任何一Current中所有的寄存器的值,處理器從一種狀態(tài)改F9即在改行設(shè)置斷點,程序運行到此處localView->Watch&CallStackWindow,在此Window中,選擇Localstab就可以查看所有的local變量。WatchwindowWatch#1,加入你需要查看的變量就可以查的全局變量的值。選擇Simulator仿真模式,可以通過RealViewMDK強大的仿真功能來調(diào)試程序。打開Peripheral->GPIO可以看到每一個GPIOpin的實時狀態(tài)信息。全速運行程序后,GPIO的狀態(tài)就開始按照程序的控制開ARMARM【實驗內(nèi)【實驗?zāi)客ㄟ^實驗掌握簡單ARM【實驗步1.3asm00的工程,需要注意的是,VersionEQUVersionEQU ARMex,CODE,;Namethisblockofcode ;Markfirstinstructionto::demonhowtocreeatethesimplestasm:::ADD;r0=r0+;;demontoshowAsseblycontrol(IF---ENDIF)IFVersion<>0MOVR2,B;Markendof只需要修改“Linker”選項卡,設(shè)置程序的RO和RW的址。去掉使用刪除默認使用的Scatter具體的地址值和上面框中設(shè)置的址一致。注意:本實驗中的RO和RW址配置只能針對于,代碼為【程序分 段和AREA(ZI)AREA命令來標(biāo)記一個段的開始。該命令對段進行命名并ENTRYEND單獨的END命令結(jié)束。ARM【實驗內(nèi)【實驗?zāi)俊緦嶒灢?ARMex,CODE,2.1asm01的工程。需要注意的是,在配置工程時,“Linker”選項卡設(shè)置與實驗2.1不同,原因是asm01.s中的代碼段屬性為READWRITE(而實驗2.1中代碼段的屬性為READONY,所R/OBase(--entry ARMex,CODE,修改“LinkerR/OR/W因為–entry0x 初始值指向這個位置,通過使用DebugInRam.ini文件來實現(xiàn)。 下建立一個名為 >>>FUNCvoidSetup{//<o>ProgramEntryPointPC=0x }//map readWRITE//Setupfor將實驗2.1中的asm00.s代碼到本實驗所在工程源碼 碼將其中的READONLY屬性修改為READWRITE。::demonhowtocreeatethesimplestasm:;//;//;//::VersionEQU ARMex,CODE,;Namethisblockofcode ;MarkfirstinstructiontoADD;r0=r0+;;demontoshowAsseblycontrol(IF---ENDIF)IFVersion<>0MOVR2,B;MarkendofARM【實驗內(nèi)【實驗?zāi)啃蚍种?。學(xué)習(xí)使用條件碼,加強對CPSR的認識【實驗步2.2中的方法,建立一個名為asm02GLOBALReset_Handler;/*SetnumberGLOBALReset_Handler;/*Setnumberofwordstobecopied r0, r1, r2,;/*r0=pointertosourceblock;/*r2=numberofwordstocopysp,;/*setupstackpointer(r13) sp!,{r4-;/*savesomeworkingregistersldmiar0!,{r4-r11}stmiar1!,{r4-r11}subsr3,r3,#1bne;/*load8wordsfromthesource;/*andputthematthedestination;/*decrementthecounter;/*...copymore sp!,{r4- ;/*don'tneedthesenow-restoreoriginalsr3,r2,numberofeightmultipleslessthaneighttomove?r3,[r0],r3,[r1],r2,r2,;/*awordfromthesource;/*storeawordtothedestination;/*decrementthecounter;/*...copymorebmakeawordr2,r2,numberofoddwordstocopyNowordslefttocopy?實驗:ARM匯編子程序【實驗內(nèi)【實驗?zāi)俊緦嶒灢健緟⒖即鷑umequ2export;/*Numberofentriesinjumptableb AccordingR0valudetoexecutethe ;/*labelthefunction*/r0,setupthethreeparametersr1,r2,callthefunctionr3,;/*Loadaddressofjumptablepc,;/*Jumptotheappropriateroutiner0,Operation0,>1Returnr0,Operation1Returnmarktheendofthisfile;/*Treatfunctioncodeasunsignedinteger;/*Ifcodeis>=2thendooperation0.實驗:ARM【實驗內(nèi)【實驗?zāi)坑^察不同模式下的寄存器,加深對CPU結(jié)構(gòu)的理解?!緦嶒灢桨凑諏嶒?.1的方法,新建一個工程,名字為armmode工程;添加【參考代constantEXPORT |.text|,CODE, ;/*Setupinterrupt/exception bbbbvectorb bx;/*intoSystemmrs;/*readCPSRvaluebic;/*clearlow5bitorrr0,r0,#0x1f ;/*setthemodeasSystemmode*/msrcpsr_cxfs,r0movr0, ;/*initializationtheregisterinSystemmodemovr1,movr2,movr3,movr4,movr5,movr6,movr7,movr8,movr9,movr10,movr11,movr12,movr13,movr14,;/*intoFIQmrs;/*readCPSRbic;/*clearlow5orrr0,r0,#0x11 ;/*setthemodeasFIQmode*/msrcpsr_cxfs,r0movr8, ;/*initializationtheregisterinFIQmodemovr9,movr10,movr11,movr12,movr13,movr14,intoSVCmrsbicorrmsrswimovr13,;/*initializationtheregisterinSVCmovr14,intoAbortmrsbicorrmsrmovr13, ;/*initializationtheregisterinAbortmodemovr14,intoIRQ;/*clearlow5r13,;/*initializationtheregisterinIRQr14,;;/*intoUNDEFmrsbic;/*clearlow5orr msrmovr13,#29 movr14,#30 ;/*jumpbacktoReset_Handler*/C語言程序?qū)崱緦嶒瀮?nèi)建立一個簡單的 【實驗?zāi)俊緦嶒灢桨凑諏嶒?.3中的方法,新建一個工程,名字為C_test1C_CALL.c【參考代voidvoiddelay(intfunctionint{return}{inti=for(;;{}}/* ENTRY /*/*/*/*/*::::DELAYSOMEnTime--INPUTvoiddelay(int{inti,j=for(i=0;i<nTime;{for(j=0;j<10;{}}}實驗:C語言中內(nèi)嵌【實驗內(nèi) 【實驗?zāi)繉W(xué)會在C【實驗步 1.3CTest2【參考代源文件CCode.cclanguage Thefollowingexampleembedassembel #include<stdio.h>void{int{mov}} delay voiddelay(void){int{}} delay voiddelay10(void){intfor(i=0;i<=10;{}} ccode {{for(;;{}}附錄一、ARM匯編指轉(zhuǎn)指直接向程序計數(shù)器PCMOV通過向程序計數(shù)器PC寫入跳轉(zhuǎn)地址值,可以實現(xiàn)在4GB的地址空間中的任意跳MOVARM指令集中的跳轉(zhuǎn)指令可以完成從當(dāng)前指令向前或向后的32MB的地址空間的跳轉(zhuǎn),包括以下4條指令:BBB指令,ARM處理器將立即跳轉(zhuǎn)到給定的BB BLBL是另一個跳轉(zhuǎn)指令,但跳轉(zhuǎn)之前,會在寄存器R14中保存PC的當(dāng)前內(nèi)容,因此,BLBLXBLXBLXBLX指令從ARM指令集跳轉(zhuǎn)到指令中所指定的目標(biāo)地址,并將處理器ARM狀態(tài)切換到Thumb狀態(tài),該指令同時將PC的當(dāng)前內(nèi)容保存到寄存器R14中。因此,當(dāng)子程序使用Thumb指令集,而調(diào)用者使用ARM指令集時,可以通過BLX指令實現(xiàn)子程序的調(diào)用和處理器工作狀態(tài)的切換。同時,子程序的返回可以通過將寄存器R14值到PC中來BXBX{BX{條件}BX指令跳轉(zhuǎn)到指令中所指定的目標(biāo)地址,目標(biāo)地址處的指令既可以是ARM指令,也可以是Thumb指令。二、數(shù)據(jù)處理寄存器中,同時更新CPSR中的相應(yīng)條件標(biāo)志位。數(shù)據(jù)處理指令共以下16條。MOVMOV{MOV{條件}{S}其中S選項決定指令的操作是否影響CPSR中條件標(biāo)志位的值,當(dāng)沒有S時指令不更新CPSRMOVMOVMOVMOV MVNMVN{MVN{條件}{S}MVN指令可完成從另一個寄存器、被移位的寄存器、或?qū)⒁粋€立即數(shù)加載到目的寄存器。與其S決定指令的操作是否影響CPSR中條件標(biāo)志位的值,當(dāng)沒有S時指令不更新CPSR中條MVNMVN CMPCMP指令用于把一個寄存器的內(nèi)容和另一個寄存器的內(nèi)容或立即數(shù)進行比較,同時更新CPSR中條件標(biāo)志位的值。該指令進行一次減法運算,但不結(jié)果,只更改條件標(biāo)志位。標(biāo)志位表示的是操作數(shù)1與操作數(shù)2的關(guān)系(大、小、相等),例如,當(dāng)操作數(shù)1大于操作操作數(shù)2,則此后的有GT后綴的指令將可以執(zhí)行。CMN時更新CPSR中條件標(biāo)志位的值。該指令實際完成操作數(shù)1和操作數(shù)2相加,并根據(jù)結(jié)果TSTTSTTSTTSTTEQTEQ指令用于把一個寄存器的內(nèi)容和另一個寄存器的內(nèi)容或立即數(shù)進行按位的異或運算,并根據(jù)運算結(jié)果CPSR中條件標(biāo)志位的值。該指令通常用于比較操作數(shù)1和操作數(shù)2是否相等。TEQTEQADD存器,操作數(shù)2可以是一個寄存器,被移位的寄存器,或一個立即數(shù)。;R0=R1+;R0=R1+;R0=R2+(R3<<8.ADCADC指令用于把兩個操作數(shù)相加,再加上CPSR中的C條件標(biāo)志位的值,并將結(jié)果存放忘記設(shè)置S后綴來更改進位標(biāo)志。操作1應(yīng)是一個操作數(shù)2可以是一個寄存器,以下指令序列完成兩個SUB;=-;=-;=-(R3<<SBCSBC指令用于把操作1減去操作2,再減去CPSR中的C條件標(biāo)志位的反碼,并將減法,注意記設(shè)置S后綴來更改進位標(biāo)志。該指令可用于有符號數(shù)或無符號數(shù)的減 R0R1R2!CRSBRSB指令稱為逆向減法指令,用于把操作數(shù)2減去操作數(shù)1,并將結(jié)果存放到目的寄存器中。操作數(shù)1應(yīng)是一個寄存器,操作數(shù)2可以是一個寄存器,被移位的寄存器,或一個;R0=R2–;R0=256–;R0=(R3<<1)-RSCRSC指令用于把操作2減去操作1,再減去CPSR中的C條件標(biāo)志位的反碼,并將位的寄存器,或一個立即數(shù)。該指令使用進位標(biāo)志來表示借位,這樣就可以做大于32位的減法,注意記設(shè)置S后綴來更改進位標(biāo)志。該指令可用于有符號數(shù)或無符號數(shù)的減法 ;R0=R2–R1-AND1應(yīng)是一個寄存器,操作數(shù)2可以是一個寄存器,被移位的寄存器,或一個立即數(shù)。該指令常用于操作數(shù)1的某些位。ANDAND R00、1ORRORRORR EOR ;該指令反轉(zhuǎn)R00、1BICBICBICR00、1MULMUL{MUL{條件}{S}1;R0=R1×;R0R1R2CPSRMLA}MLA指令完成將操作1與操作2的乘法運算,再將乘積加上操作數(shù)3,并把結(jié)果放置到目的寄存器中,同時可以根據(jù)運算結(jié)果設(shè)置CPSR中相應(yīng)的條件標(biāo)志位。其中,操作數(shù)1和操作數(shù)2均為32位的有符號數(shù)或無符號數(shù)。MLAMLA;R0=R1×R2+MLAS;R0=R1×R2+SMULLSMULL指令完成將12的乘法運算,并把結(jié)果32位放置到目的寄中相應(yīng)的條件標(biāo)志位。其中,操作數(shù)1和操作數(shù)232位的有符號數(shù)。SMULLSMULL;R0(R2R3)32;R1(R2R3)32SMLALSMLAL指令完成將12的乘法運算,并把結(jié)果32位同目的寄存器Low中的值相加后又放置到目的寄存Low中,結(jié)果的32位同目的寄存High中的值相加后又放置到目的寄存器High中,同時可以根據(jù)運算結(jié)果設(shè)置CPSR中相應(yīng)的條件標(biāo)志位。其中,操作數(shù)1和操作數(shù)232位的有符號數(shù)。SMLALSMLAL;R0(R2R3)32;R1(R2R3)32UMULLUMULL指令完成將12的乘法運算,并把結(jié)果32位放置到目的寄中相應(yīng)的條件標(biāo)志位。其中,操作數(shù)1和操作數(shù)232位的無符號數(shù)。UMULLUMULL;R0(R2R3)32;R1(R2R3)32UMLALUMLAL指令完成將12的乘法運算,并把結(jié)果32位同目的寄存器Low中的值相加后又放置到目的寄存Low中,結(jié)果的32位同目的寄存High中的值相加后又放置到目的寄存器High中,同時可以根據(jù)運算結(jié)果設(shè)置CPSR中相應(yīng)的條件標(biāo)志位。其中,操作數(shù)1和操作數(shù)232位的無符號數(shù)。UMLALUMLAL;R0(R2R3)32;R1(R2R3)32四、程序狀態(tài)寄存器指MRSMRS{MRS{條件}通用寄存器,程序狀態(tài)寄存器(CPSRMRSMRSMRSMSRMSR{MSR{條件}程序狀態(tài)寄存器(CPSRSPSR)_<域>存器可分為4個域:位[23:16]為狀態(tài)位域,用s表示;位[7:0]c表示;MSRMSRMSRMSR五、加載/指ARM微處理器支持加載/指令用于在寄存器和器之間傳送數(shù)據(jù),加載指令用于LDR LDR指令用于從器中將一個32位的字數(shù)據(jù)傳送到目的寄存器中。該指令通常用于從器中32位的字數(shù)據(jù)到通用寄存器,然后對數(shù)據(jù)進行處理。當(dāng)程序計數(shù)器PC作 LDRLDR 器地址為R1+8的字數(shù)據(jù)讀入寄存器R0 ;并將新地址R1+R2R1LDRR0,[R1,#8] ;并將新地址R1+8寫入R1LDR;并將新地址R1+R2R1LDR ;并將新地址R1+R2×4寫入R1LDRB 的高24位清零。該指令通常用于從器中8位的字節(jié)數(shù)據(jù)到通用寄存器,然后對數(shù)據(jù)進行處理。當(dāng)程序計數(shù)器PC作為目的寄存器時,指令從器中的字數(shù)據(jù)被當(dāng)作目的LDRBLDRBLDRB LDRH 高16位清零。該指令通常用于從器中16位的半字數(shù)據(jù)到通用寄存器,然后對數(shù) 器地址為R1的半字數(shù)據(jù)讀入寄存器 STR 中比較常用,且尋址方式靈活多樣,使用方式可參考指令LDR。STRSTR ;并將新地址;并將新地址R1+8寫入R1STR STRB STRB指令用于從源寄存器中將一個8位的字節(jié)數(shù)據(jù)傳送到器中。該字節(jié)數(shù)據(jù)為源寄存器中的低8位。R0,[R1,#8]R0R1+8;STRH STRH指令用于從源寄存器中將一個16位的半字數(shù)據(jù)傳送到器中。該半字數(shù)據(jù)為源寄存器中的低16位。R0,[R1,#8]R0R1+8;六、批量數(shù)據(jù)加載/指ARM微處理器所支持批量數(shù)據(jù)加載/指令可以一次在一片連續(xù)的器單元和多個IA1;IB1;DA1;DB1;FD滿遞減堆棧;ED空遞減堆棧;FA滿遞增堆棧;EA正常的數(shù)據(jù)傳送之外,還將SPSR到CPSR。同時,該后綴還表示傳入或傳出的是用戶STMFDSTMFDR13!,{R0,R4-LDMFDR13!,{R0,R4- ;,SWPSWP指令用于將源寄存器2所指向的器中的字數(shù)據(jù)傳送到目的寄存器中,同時將源寄存器1中的字數(shù)據(jù)傳送到源寄存器2所指向的器中。顯然,當(dāng)源寄存器1和目的寄存器為同一個寄存器時,指令交換該寄存器和器的內(nèi)容。SWPSWPSWPSWPBSWPBSWPB;傳送到R2SWPB;該指令完成將R1所指向 八、移位指令(操作LSL(或ASL)操(0~31MOVMOVR0R1 LSR(0~31MOVMOVR0,R1,ASRASR可完成對通用寄存器中的內(nèi)容進行右移的操作,按操作數(shù)所指定的數(shù)量向右移位,(0~31R0,R1,RORROR可完成對通用寄存器中的內(nèi)容進行循環(huán)右移的操作,按操作數(shù)所指定的數(shù)量向右循顯然,當(dāng)進行32位的循環(huán)右移操作時,通用寄存器中的值不改變。 R0R1 RRXC來填充。其中,操作數(shù)可以是通用寄存器,也可以(0~31R0,R1,;傳送到R0CDPCDP{CDP{條件}協(xié)處理器編碼,協(xié)處理器操作碼1,目的寄存器,源寄存器1,源寄存器2,協(xié)處理器操作碼2CDP指令用于ARM處理器通知ARM協(xié)處理器執(zhí)行特定的操作,若協(xié)處理器不能成功完成ARM處 LDCLDCLDC;的字數(shù)據(jù)傳送到協(xié)處理器P3的寄存器C4STCMCRMCR{MCR{條件}協(xié)處理器編碼,協(xié)處理器操作碼1,源寄存器,目的寄存器1,目的寄存器2,協(xié)處理器操作碼2MCR指令用于將ARM處理器寄存器中的數(shù)據(jù)傳送到協(xié)處理器寄存器中,若協(xié)處理器不能MCRMCRMRCMRC{MRC{條件}協(xié)處理器編碼,協(xié)處理器操作碼1,目的寄存器,源寄存器1,源寄存器2,協(xié)處理器操作碼2MRC指令用于將協(xié)處理器寄存器中的數(shù)據(jù)傳送到ARM處理器寄存器中,若協(xié)處理器不能處理器將要執(zhí)行的操作,目的寄存器為ARM處理器的寄存器,源寄存器1和源寄存器2均MRCMRCSWISWI BKPT 附錄二、ARM匯編偽指一、符號定義(SymbolDefinition)操作。常見的符號定義偽指令有如下4種:GBLA、GBLL和 GBLA偽指令用于定義一個全局的數(shù)字變量,并初始化為0;GBLL偽指令用于定義一個全局的邏輯變量,并初始化為F(假GBLS偽指令用于定義一個全局的字符串變量,并初始化為空;LCLA、LCLL和 LCLA偽指令用于定義一個局部的數(shù)字變量,并初始化為0;LCLL偽指令用于定義一個局部的邏輯變量,并初始化為F(假LCLS偽指令用于定義一個局部的字符串變量,并初始化為空;;Test3 ;Test4 Test6 ;Test3 ;Test4 Test6 SETA、SETL和變量變量 表達SETA偽指令用于給一個數(shù)學(xué)變量賦值;SETL偽指令用于給一個邏輯變量賦值;;; SETA; SETL名稱名稱RLIST寄存器列表RLIST偽指令可用于對一個通用寄存器列表定義名稱,使用該偽指令定義的名稱可在ARM指令LDM/STM中使用。在LDM/STM指令中,列表中的寄存器次序為根據(jù)寄存器RegListRLISTRegListRLIST{R0-R5,R8,R10RegList二、數(shù)據(jù)定義 Definition)偽指始化。常見的數(shù)據(jù)定義偽指令有如下9種:標(biāo)標(biāo) 表達表達式可以為0~255的數(shù)字或字符串。DCB也可用“=”代替。StrStrDCB“Thisisatest!”;分配一片連續(xù)的字 DCW(或標(biāo)標(biāo) DCW(或DCWU)表達DCW(或DCWU)偽指令用于分配一片連續(xù)的半字單元并用偽指令中指定的表達式DataTestDataTest DCD(或標(biāo)標(biāo) DCD(或DCDU)表達DCD(或DCDU)偽指令用于分配一片連續(xù)的字單元并用偽指令中指定的表達式初始化。其中,表達式可以為程序標(biāo)號或數(shù)字表達式。DCD也可用“&”代替。DataTest DataTest DCFD(標(biāo)標(biāo) 表達FDataTestFDataTest DCFS(標(biāo)標(biāo) 表達FDataTestFDataTe
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年商業(yè)照明燈具項目合作計劃書
- 銀行管理系統(tǒng)項目展示
- 幼教財務(wù)培訓(xùn)
- 社區(qū)團購供應(yīng)鏈與社區(qū)物業(yè)管理公司合作協(xié)議
- 抖音PUGC內(nèi)容孵化與市場拓展合作協(xié)議
- 2025年山梨酸及山梨酸鉀項目建議書
- 獨家定制私人直升機航拍任務(wù)空域申請與管理合同
- 外科痔瘡護理要點與流程
- 網(wǎng)紅零食品牌連鎖加盟區(qū)域獨家運營管理及培訓(xùn)協(xié)議
- 大專院校教務(wù)行政人員派遣服務(wù)協(xié)議
- 納米金屬顆粒的合成與表征
- SH/T 3543-2007 石油化工建設(shè)工程項目施工過程技術(shù)文件規(guī)定
- 注塑模具設(shè)計英文參考文獻
- 低壓開關(guān)柜出廠檢驗報告-5
- 圍術(shù)期室性早搏處理
- 《心理健康教育》課件-關(guān)愛心靈擁抱陽光
- 小學(xué)英語完形填空課件
- 腸道疾病的診療培訓(xùn)課件
- 地鐵保安工作總結(jié)
- 新一代國際結(jié)算系統(tǒng)需求規(guī)格說明書(遠期結(jié)售匯)V1.0
- 血管導(dǎo)管相關(guān)感染預(yù)防與控制指南(2021年)
評論
0/150
提交評論