欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    【教学课件】第四章微处理器结构和指令集.ppt

    • 资源ID:5665018       资源大小:249.50KB        全文页数:66页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    【教学课件】第四章微处理器结构和指令集.ppt

    第四章 微处理器结构和指令集,4.1 微处理器的内部寄存器结构4.2 S12汇编指令集4.3 指令按功能分类4.4 指令按寻址方式分类4.5 用汇编语言编写程序,Page 1,Page 2,Numbering and coding systems,4.1 微处理器的内部寄存器结构 典型的16位微处理器,Page 3,Numbering and coding systems,进位/借位标志C溢出标志V为零标志Z为负标志N,条件码计数器 CCR,7,0,中断屏蔽位IHalf Carry(For BCD)非屏蔽中断允许XSTOP 运行模式禁止位,Interrupt priority level IPL(07)0:关中断,CCR,4.1 微处理器的内部寄存器结构 典型的16位微处理器,1KB EEPROM,1KB EEPROM,Page 4,MC9S12XS128,8KB RAM,16KB FLASH,16KB FLASH复位、中断向量区,2KB I/O空间,$0000,$0800,$0C00,$4000,$FFFF,$FF00,4.1 微处理器的内部寄存器结构 基本内存空间分配,程序代码,变量、堆栈,外设寄存器,2KB EEPROM,12KB RAM,48KB FLASH,复位、中断向量区,2KB I/O空间,$0000,$0800,$1000,$4000,$FFFF,典型的64KB存储空间分配,4KB RAM,$2000,$1000,16KB FLASH,$8000,$C000,Page 5,Numbering and coding systems,4.2 S12X 汇编指令集,汇编语言是机器码语言,与CPU的硬件结构紧密相关,不同的CPU其汇编语言是不同的,程序不能移植,使用不便。高级语言:与计算机的硬件结构没多大关系。程序通用性好,便于移植。如:C语言、BASIC语言。虽然应用程序可以主要用C语言来开发,但与时序相关的硬件操作必须用汇编语言编写,因为汇编语言程序可以准确地计算出某段程序的执行时间。汇编语言使用助记符、符号和数字等来表示的程序语言。容易理解和记忆,它与机器语言一一对应。,Page 6,Numbering and coding systems,汇编语言指令格式,标号:操作码 第一操作数,第二操作数,第三操 作数,第四操作数;注释 操作码:指令代码,以符号形式给出该指令执行什么操 作。由25个英文字母表示。操作数:参与操作的数据或数据存放的地址。表示可选。要养成直接读操作助记符、直接记英语含义的习惯。如 CLR 读作 clear LDAA 读作 load accumulator A,Page 7,Numbering and coding systems,4.3 指令按寻址方式分类,17,17,4000,1.隐含寻址(inherent)隐含寻址指令中只有操作码,没有操作数。如 PSHA;(SP)-1SP,(A)(SP)执行前 执行后,3FFF,FF,A,SP,4000,3FFF,SP,A,Data memory,Page 8,4.3 指令按寻址方式分类,2.立即数寻址(immediate)操作码后有一个或两个字节的操作数,该操作数表示一个8或16位的数值。立即数由#后面跟数据表示。如:LDY#$3000;$表示后面是十六进制数字 0 xLDAA#10;缺省为十进制 ORAA#%0001011;%表示后面是二进制数字 0b,Page 9,4.3 指令按寻址方式分类,3.直接寻址(direct)操作数为单字节地址,高位默认为$00,只能对$00$FF存储单元进行寻址。$00$FF是I/O口寄存器地址。如:LDAA$40;STAA$40;(A)(0040)在单字节地址前加就表示的是直接寻址。,Page 10,4.3 指令按寻址方式分类,4.扩展寻址(Extended)扩展寻址中操作数占2个字节,表示的是存储单元的地址,故寻址范围是64KB。如:STAA$2040;(A)(2040)STAA$40;(A)(0040)STAA$0040;(A)(0040)因开发环境不同,汇编生成的机器代码会不同,codewarrior中上述两条指令相当于直接寻址。,Page 11,4.3 指令按寻址方式分类,5.变址寻址(Indexed),寄存器间接寻址 操作数表示一个地址偏移量。有效地址由变址寄存器X(或Y,SP,PC)的值加上这个偏移量得到的。偏移量细分为无偏移量、5位(16)、9位(255)或16位偏移量。如:STAA,X;无偏移量 STAA 10,X;=5位 STAA-200,X;=9位LDAA 2000,X;16位LDAA 2000,X;X+2000,X+2001,Page 12,4.3 指令按寻址方式分类,6.带自动加、减5位偏移量的间接变址寻址,如:MOVW 2,X+,4,+Y 如X=$2000,Y=$3000,指令含义是将$2000和$2001两单元的内容传给$3004和$3005两单元。与C语言相同,X+为先用后加,+Y为先加后用。,Page 13,4.3 指令按寻址方式分类,7.相对寻址如:BNE LABLE;CCR寄存器中Z不为 零,就转到LABLE处。JMP D,PC;转到PC+D所指向的存 储器中的值所指处。偏移量是转移的目的值与当前地址值之差,这是编译器自动计算出来的。根据偏移量的大小分为相对短转移(-128127)和相对长转移(-3276832767)。,Page 14,4.4 指令按功能分类,数据空间分为寄存器和存储器。寄存器:,B,CCR,D,X,Y,SP,存储器:对MC9S12XS128为$2000$3FFF空间。位数相等条件下完成数据传送,4.3.1 数据传送指令,Register,Memory,Load,Store,Transfer,Move,Exchange,Load指令,读到寄存器中来。如 LDAA#$41;#立即数,$16进制 LDAA 读作 Load Accumulator A LDAB Load B(M)B LDD Load D(M:M+1)(A:B)LDS Load SP(M:M+1)(SPH:SPL)LDX Load index register X 间址寄存器 LDY Load index register Y LEAS Load Effective Address into SP(P320)LEAX Load Effective Address into X LEAY Load Effective Address into Y 有效地址,Page 15,Store指令,写到寄存器中去。如 STAA$2000;(A)($2000)STAA Store A(A)M STAB Store B STD Store D STS Store SP STX Store X STY Store Y,Page 16,Move指令,不经过寄存器的、直接存储器数据传送指令。如 MOVB$2000,$2008;($2000)($2008)MOVB Move Byte MOVW Move Word,Move指令,Page 17,Transfer指令寄存器到寄存器的数据传送指令。TAB Transfer A to B(A)B TBA Transfer B to A TAP Transfer A to CCR TPA Transfer CCR to A TFR Transfer register to register TSX Transfer SP to X TSY Transfer SP to Y TXS Transfer X to SP TYS Transfer Y to SP,Page 18,EXG Exchange register to register XGDX Exchange D with Y XGDY Exchange D with Y,Exchange指令 寄存器间数据交换,Page 19,PSHA Push A(SP)-1SP,(A)(SP)PSHB Push B PSHD Push DPSHC Push CCRPSHCW Push CCRH:CCRPSHX Push X PSHY Push Y,堆栈操作指令,Page 20,PULA Pull A(M(SP)A,(SP)+1SPPULB Pull B PULD Pull DPULC Pull CCRPULCW Pull CCRH:CCRPULX Pull X PULY Pull Y,堆栈操作指令,Page 21,SEX Sign Extend Byte to Word 把8位数转成16位数的符号扩展指令 D7=0,THEN D8-D15=0X00 D7=1,THEN D8-D15=0XFFLDAA#$84SEX A,DLDAA#$04SEX A,D指令执行后,(A)=;(B)=,4.4.2 算术与逻辑运算指令,ADDA ADD without carry to A(A)+(M)AADDB ADD without carry to B(B)+(M)BADDD ADD without carry to D(A:B)+(M:M+1)A:BADDX ADD without carry to X(X)+(M:M+1)XADDY ADD without carry to Y(Y)+(M:M+1)YABA Add A to B(B)+(A)AABX Add B to X(B)+(X)XABY Add B to Y(B)+(Y)Y,加、减法指令(无进位),ADCA ADD with carry to A(A)+(M)+CAADCB ADD with carry to B(B)+(M)+C BADED ADD with carry to D(A:B)+(M:M+1)+C A:BADEX ADD with carry to X(X)+(M:M+1)+C XADEY ADD with carry to Y(Y)+(M:M+1)+C Y,加、减法指令(有进位),SUCA Subtract with borrow from A(A)-(M)-CASUCB Subtract with borrow from B(B)-(M)-CBSUED Subtract with borrow from D(A:B)-(M:M+1)+C A:BSUEX Subtract with borrow from X(X)-(M:M+1)+C XSUEY Subtract with borrow from Y(Y)-(M:M+1)+C Y,加、减法指令(有进位),SUBA Subtract memory from A(A)-(M)ASUBB Subtract memory from B(B)-(M)BSUBD Subtract memory from D(A:B)-(M:M+1)A:BSUBX Subtract memory from X(X)-(M:M+1)XSUBY Subtract memory from Y(Y)-(M:M+1)YSBA Subtract B from A(A)-(B)A,加、减法指令(无借位减法),EMUL Multiply(unsigned)16 by 16(D)(Y)Y:DEMULS Multiply(signed)16 by 16(D)(Y)Y:DMUL Multiply(unsigned)8 by 8(A)(B)A:B,乘除法指令,EDIV Divide(unsigned)32 by 16(Y:D)(X)Y,RemainedDEDIVS Divide(signed)32 by 16(Y:D)(X)Y,RemainedDFDIV Fractional Divide(unsigned)16 by 16(D)(X)X,RemainedDIDIV Integer Divide(unsigned)16 by 16(D)(X)X,RemainedDIDIVS Integer Divide(signed)16 by 16(D)(X)X,RemainedD,乘除法指令,EMACS Multiply and Accumulate(signed)(M(X):M(X+1)(M(Y):M(Y+1)+(MM+3)MM+3查表、插值指令TBL Table Lookup and interpolate 8-bit(M)+(B)(M+1)-(M)AETBL Table Lookup and interpolate 16-bit(M:M+1)+(B)(M+2:M+3)-(M:M+1)D,乘加除法指令,DAA Decimal Adjust(A)10调整规则:加法结果大于9,或产生H进位,结果+6减法结果有借位,结果-6,十进制调整的BCD指令,(A)=37H,(B)=46H,即十进数37和46的BCD码 执行 ADDA B 后:3 7 H|0011|0111 4 6 H+|0100|0110 进位 0|0000|1100-|0111|1101 结果:低4位已非BCD码。DA A 调整|0111|1101+|0000|0110-83 H|1000|0011,INC Increment memory(M)+$01 MINCA Increment A(A)+$01 MINCB Increment B(B)+$01 MINCW Increment memory(M:M+1)+$0001M:M+1INS Increment SP(SP)+$0001SPINX Increment X(X)+$01 XINY Increment Y(Y)+$01 Y,加一减一指令,DEC Decrement memory(M)-$01 MDECA Decrement A(A)-$01 MDECB Decrement B(B)-$01 MDECW Decrement memory(M:M+1)-$0001M:M+1DES Decrement SP(SP)-$0001SPDEX Decrement X(X)-$01 XDEY Decrement Y(Y)-$01 Y,加一减一指令,CLC Clear C bit in CCR 0 CCLI Clear I bit in CCR 0 ICLV Clear V bit in CCR 0 VCLR Clear memory$0 MCLRA Clear A$0 MCLRB Clear B$0 MCLRW Clear memory 2bytes$00 M:M+1CLRX Clear X 2bytes$00 XCLRY Clear Y 2bytes$00 Y,清零指令,COM Complement memory,1byte$FF-(M)M or(/M)MCOMA Complement A,1byte$FF-(A)A or(/A)ACOMB Complement B,1byte$FF-(B)B or(/B)BCOMW Complement memory,2bytes$FFFF-(M:M+1)M:M+1COMX Complement X,2bytes$FFFF-(X)XCOMY Complement Y,2bytes$FFFF-(Y)Y,求反指令,NEG Complement memory,1byte$00-(M)M or(/M)+1 MNEGA Complement A$00-(A)A or(/A)+1ANEGB Complement B$00-(B)B or(/B)+1BNEGW Complement memory,2bytes$0000-(M:M+1)M:M+1NEGX Complement X,2bytes$0000-(X)XNEGY Complement Y,2bytes$0000-(Y)Y,取负数指令,CBA Compare A to B(A)-(B)影响CCR寄存器CMPA Compare A to memory(A)-(M)CMPB Compare B to memory(A)-(M)CPD Compare D to memory(A:B)-(M:M+1)CPS Compare SP to memory(SP)-(M:M+1)CPX Compare X to memory(X)-(M:M+1)CPY Compare Y to memory(Y)-(M:M+1),比较指令,CPED Compare D to memory with borrow(A:B)-(M:M+1)-CCPES Compare SP to memory with borrow(SP)-(M:M+1)-CCPEX Compare X to memory with borrow(X)-(M:M+1)-CCPEY Compare Y to memory with borrow(Y)-(M:M+1)-C,比较指令,TST Test memory for zero or minus(M)-$00TSTA Test A for zero or minus(A)-$00 TSTB Test B for zero or minus(B)-$00 TSTW Test memory for zero or minus(M:M+1)-$00 TSTX Test X for zero or minus(X)-$00 TSTY Test Y for zero or minus(Y)-$00,测试字节是否为零指令,BCLR Clear bits in memory(M)(mm)MBITA Bit test A(A)(M)BITB Bit test B(B)(M)BITX Bit test X(X)(M:M+1)BITY Bit test Y(Y)(M:M+1)BSET Set bits in memory(M)+(mm)M,测试位与位操作指令,BTAS Bit test And Set If(M)(Mast)=0,then set Z,else clear Z,位测试与置位指令(用于信号量置位):,ANDA AND A with memory(A)(M)AANDB AND B with memory(B)(M)AANDCC AND CCR with memory(CCR)(M)CCRANDX AND X with memory(X)(M:M+1)XANDY AND Y with memory(Y)(M:M+1)YEORA Exlusive OR A with memory(A)(M)AEORB Exlusive OR B with memory(B)(M)BEORX Exlusive OR X with memory(X)(M:M+1)XEORY Exlusive OR Y with memory(Y)(M:M+1)Y,逻辑运算操作指令,ORAA OR A with memory(A)|(M)AORAB OR B with memory(B)|(M)AORCC OR CCR with memory(CCR)|(M)CCRORX OR X with memory(X)|(M:M+1)XORY OR Y with memory(Y)|(M:M+1)Y,逻辑运算操作指令,LSL Logic Shift Left memory,High bit to C,Low bit fill with 0LSLW Logic Shift Left M:M+1,2 bytes High bit to C,Low bit fill with 0LSLA Logic Shift Left A,High bit to C,Low bit fill with 0LSLB Logic Shift Left B,High bit to C,Low bit fill with 0同样有D、X和Y,逻辑移位与循环移位指令,LSR Logic Shift Right memory,Low bit to C,High bit fill with 0LSRW Logic Shift Right M:M+1,2 bytes Low bit to C,High bit fill with 0LSRA Logic Shift Right A,Low bit to C,High bit fill with 0LSRB Logic Shift Right B,Low bit to C,High bit fill with 0同样有D、X和Y,逻辑移位与循环移位指令,ROL ROtate Left memory through carry ROLW ROtate Left memory 2 bytes through carry ROLA ROtate Left A through carry ROLB ROtate Left B through carryROLX ROtate Left X through carryROLY ROtate Left Y through carryROR ROtate Right memory through carry RORW ROtate Right memory 2 bytes through carry RORA ROtate Right A through carry RORB ROtate Right B through carryRORX ROtate Right X through carryRORY ROtate Right Y through carry,逻辑移位与循环移位指令,ASL Arithmetic Shift Left memory,Same as LSLASLA Arithmetic Shift Left A,Same as LSLA ASLB Arithmetic Shift Left B,Same as LSLB ASLD Arithmetic Shift Left D,Same as LSLDASLX Arithmetic Shift Left X,Same as LSLX ASLY Arithmetic Shift Left Y,Same as LSLY,算术移位指令,ASR Arithmetic Shift Right memory,High bit dose not change,Low bit to CASRA Arithmetic Shift Right A,High bit dose not change,Low bit to CASRB Arithmetic Shift Right B,High bit dose not change,Low bit to CASRW Logic Shift Right M:M+1,High bit dose not change,Low bit to CASRX Arithmetic Shift Right X,High bit dose not change,Low bit to CASRY Arithmetic Shift Right Y,High bit dose not change,Low bit to C,算术移位指令(右移:符号位保持不变),EMIND MIN of 2 unsigned 16-bit value to D MIN(D),(M:M+1)DEMINM MIN of 2 unsigned 16-bit value to mem MIN(D),(M:M+1)M:M+1MINA MIN of 2 unsigned 8-bit value to A MIN(A),(M)AMINM MIN of 2 unsigned 8-bit value to memory MIN(A),(M)M,取极小值指令,EMAXD MAX of 2 unsigned 16-bit value to D MAX(D),(M:M+1)DEMAXM MAX of 2 unsigned 16-bit value to memory MAX(D),(M:M+1)M:M+1MAXA MAX of 2 unsigned 8-bit value to A MAX(A),(M)AMAXM MAX of 2 unsigned 8-bit value to memory MAX(A),(M)M,取极大值指令,1.转移指令无条件转移指令BRA Branch AlwaysBRN Branch NeverLBRA Long Branch AlwaysLBRN Long Branch NeverJMP Jamp to absolute address,4.4.3 程序控制指令,CCR条件码寄存器中标志的意义(1),C标志 在运算时,发生最高的D7位向前进位或借位的情况它将置位。对于无符号数加来说,说明和超过了255。对于无符号数减来说,说明被减数小于减数,这在比较二无符号数大小时很有意义H标志 在运算时,发生D3位向D4的进位或借位的情况它将置位。这种进位或借位对于BCD数运算的+6/-6调整才有意义V标志 最高位向进位位的进位和次高位向最高位的进位如果相同,未发生溢出;否则,产生溢出,此时虽结果已经错误,但其符号仍可按相反解释代表结果的正负!该标志的含义因参与运算的数或编码不同而不同!对于无符号数的运算来说,无任何特殊意义。不必关心。对于有符号数补码的运算来说,表示已经发生了溢出,即超 出了编码长度所能表达的数值范围。因此,补码运算时必须关注V标志的情况N标志 反映运算结果是否为负数(D7)Z标志 反映运算结果是否为0,标志位受算术运算影响的情况,(A)=C3H,(2500)=AAH(X)=2500 执行 ADDA,x 后:位 7654 3210 C 3H|1100|0011 AAH+|1010|1010-和:|0110|1101进位:1|0000|0100结果:(A)=6D 标志 C=1,OV=1,H=0,N=0,z=0,(A)=4BH,(2500)=AA(X)=2500(C)=1 执行 ADCA,X 后 位 7654 3210 4 BH|0100|1011 AAH|1010|1010+1-结果:|1111|0110进位 0|0001|0111和(A)=F6 标志 C=0,OV=0,H=1,N=1,Z=0,标志位受算术运算影响的情况,(A)=C9H,(2500)=54H,(X)=2500(C)=1 执行 SBCA,X 后:位 7654 3210 C 9H|1100|1001 5 4 H|0101|0100-1-运算结果|0111|0100 借位 0|1110|1001(A)=74 标志 C=0,V=1,H=0,N=0,Z=0,(A)=DDH,(2500)=E8(X)=2500 执行 SUBA,X 后 位 7654 3210 DDH|1101|1101 E 8H-|1110|1000 借位 1|1100|0000-运算结果|1111|0101 和(A)=F5 标志 C=1,V=0,H=0,N=1,Z=0;,算术运算过程中标志的意义(2),同一个标志,其含义也因参与运算的数或编码的不同而不同!不管参与运算的是什么数或什么编码,在计算机看来都是一些“二进数”!所有的指令功能都是针对“二进数”而言的;所得到的运算结果,在计算机看来也是“二进数”!究竟参与运算的这些“二进数”是什么数或什么编码,得到的运算“结果”是什么数或什么编码,这是在程序设计阶段,由程序员事先安排好了的,不能随便解释。比如刚才例子中的数“0 xE8”,如果当初程序员按着补码编码制度用来表示“-24”的;以后任何人都只能这样“理解”和“解释”;绝对不可以再解释为无符号的数值“232”!相反,如果当初程序员是用它来表示无符号的数值“232”,那么以后也绝对不可以再解释为“-24”!,算术运算过程中标志的意义(3),比较二无符号数大小时应看 C标志。BCD数运算后不必直接关心H标志,只要执行正确的调整指令即可。补码运算后必须检查OV标志,以免发生溢出还不知道。补码运算溢出后虽结果已经错误,但其符号仍可按相反解释代表结果的正负!,BCC Branch if Carry Clear C=0BCS Branch if Carry Set C=1BEQ Branch if Equal Z=1BMI Branch if Minus N=1BNE Branch if Not Equal Z=0BPL Branch if Plus N=0BVC Branch if V Clear V=0BVS Branch if V Set V=1,短条件转移指令,BHI Branch if Higher(Result M C+Z=0)BHS Branch if Higher or Same(Result M C=0)BLO Branch if lower(Result M C=1)BLS Branch if lower or Same(Result M C+Z=0)BGE Branch if Greater than or Equal(Result M NV=0)BGT Branch if Greater than(Result M Z+(NV)=0)BLE Branch if Less than or Equal(ResultM Z+(NV)=1)BLT Branch if Less than(Result M NV=1)BRCLR Branch if selected bits Clear M(mm)=0BRSET Branch if selected bits Set M(mm)!=0,LBCC Long Branch if Carry Clear C=0LBCS Long Branch if Carry Set C=1LBEQ Long Branch if Equal Z=1LBMI Long Branch if Minus N=1LBNE Long Branch if Not Equal Z=0LBPL Long Branch if Plus N=0LBVC Long Branch if V Clear V=0LBVS Long Branch if V Set V=1LBHI Long Branch if Higher Result=M C+Z=0LBHS Long Branch if Higher or Same Result M C=0,长条件转移指令,LBLO Long Branch if lower Result M C=1LBLS Long Branch if lower or Same Result M C+Z=0LBGE Long Branch if Greater than or Equal Result M NV=0LBGT Long Branch if Greater than Result M Z+(NV)=0LBLE Long Branch if Less than or Equal Result M Z+(NV)=1LBLT Long Branch if Less than Result M NV=1,长条件转移指令,DBEQ Decrement(counter),if(counter)Equal 0,than Branch;DBNE Decrement(counter),if(counter)Not Equal 0,than Branch;IBEQ Increment(counter),if(counter)Equal 0,than Branch;IBNE Increment(counter),if(counter)Not Equal 0,than Branch;TBEQ Test(counter),if(counter)Equal 0,than Branch;TBNE Test(counter),if(counter)Not Equal 0,than Branch;,2.循环控制指令,JSR Jump to Subroutine;绝对BSR Branch to Subroutine;相对RTS Return from Subroutine RTI Return from Interrupt,3.跳转与子程序调用指令,STOP STOP Process 进入停止模式WAI Wait for Interrupt 进入等待模式TRAP Trap 非法指令陷进,中断非法指令SWI Software Interrupt 软件中断SYS Systems Call 系统调用中断,类似WAIBGND Back Ground Mode 进入BDM模式,4.其他指令,Page 63,Numbering and coding systems,4.5 用汇编语言编写程序,汇编管理指令(伪指令):汇编管理指令将编译需要的信息传递给编译器,不生成可执行代码。常用指令如下:EOT EQU$04;define EOT 0 x04 ORG$4000 GLOBLE RMB 2;int a STRING FCC hello world;const string“hello world”FCB EOT FDB GLOBLE XDEF GET_CHAR;PUBLIC XREF MAIN;EXTERN,Page 64,Numbering and coding systems,4.5 用汇编语言编写程序,模块化的编程方法:流程图语言编程调试修改试运行修改运行,举例:已知年和月份,通过判断这个月是大月、小月、平月还是闰月,给出该月份的天数。流程图:,输入:年份月份,输出天数,思想,算法,语言:数据类型程序结构,Page 65,Numbering and coding systems,4.5 用汇编语言编写程序,汇编程序:(汇编程序讲解.doc),Page 66,Numbering and coding systems,4.5 用汇编语言编写程序,C程序:(C语言程序讲解.doc),

    注意事项

    本文(【教学课件】第四章微处理器结构和指令集.ppt)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开