收藏 分享(赏)

第4章 汇编语言程序设计.doc

上传人:dreamzhangning 文档编号:2724232 上传时间:2018-09-26 格式:DOC 页数:21 大小:2.43MB
下载 相关 举报
第4章    汇编语言程序设计.doc_第1页
第1页 / 共21页
第4章    汇编语言程序设计.doc_第2页
第2页 / 共21页
第4章    汇编语言程序设计.doc_第3页
第3页 / 共21页
第4章    汇编语言程序设计.doc_第4页
第4页 / 共21页
第4章    汇编语言程序设计.doc_第5页
第5页 / 共21页
点击查看更多>>
资源描述

1、第4章 汇编语言程序设计一、教学要求:掌握:单片机汇编语言程序的基本结构以及加、减、乘、除运算及数制转换程序设计。理解:查表、差值运算、译码等简单程序设计方法。二、教学内容:4.1 汇编语言程序设计概述4.2 单片机汇编语言程序的基本结构形式4.3 单片机汇编语言程序程序设计举例4.4 单片机汇编语言的伪指令4.5 单片机汇编语言源程序的编辑和汇编三、教学重点:单片机汇编语言程序的基本结构及程序设计方法。四、教学难点:加、减、乘、除运算及数制转换程序设计。五、建议学时:4 学时。六、教学内容:4-1 汇编程序约定汇编语言程序:用汇编语言编写的、完成特定功能的指令序列。汇编程序:能将汇编语言源程

2、序转换成机器语言目标程序的系统软件。汇编语言程序到机器语言程序的转换过程称为汇编。1、手工汇编:人工查指令表汇编。用于设计短小程序或调试程序的场合。2、机器汇编:用汇编程序进行汇编。源程序使用机器汇编要考虑汇编程序的约定:1)按指令格式和语法规则编写程序。常数的表示:十进制数:20十六进制数:87H,0F0H二进制数:01011001B字符: H字符串: “Hello”2)使用伪指令提供汇编信息。汇编的主要任务:1)确定程序中每条汇编语言指令的指令机器码。2)确定每条指令在存储器中的存放地址。3)提供错误信息。4)提供目标执行文件(*.OBJ/*.HEX)和列表文件(*.LST ) 。一、汇编

3、语言指令类型:1. 机器指令:指令系统中的全部指令,每条指令有对应的机器代码。2. 伪指令:汇编控制指令,仅提供汇编信息,没有指令代码。3. 宏指令:宏汇编功能:将需要多次反复执行的程序段定义成一个宏指令名(宏定义) ,编程时,可在程序中使用宏指令名来替代一段程序(宏调用) 。宏定义过程:宏指令名 MACRO 形式参数 ;定义程序段ENDM宏调用过程:宏指令名 实际参数宏指令名 实际参数二、汇编控制指令(伪指令):常用伪指令及其功能:1.ORG起始地址指令:指明程序和数据块起始地址。指令地址 机器码 源程序ORG 2000H2000H 78 30 MAIN:MOV R0,#30H2002H E

4、6 MOV A,R0 ORG 3000H3000H 23 DB 23H,100, A 3001H 643002H 412.DB定义字节型常数指令。例: DB 12H,100, A3. DW 定义字型常数指令。例: DW 1234H,5678H4. EQU 等值。为标号或标识符赋值。X1 EQU 2000HX2 EQU 0FHMAIN:MOV DPTR,#X1ADD A,#X25. END 结束汇编指令。例: START: END START4-2 汇编语言程序设计步骤一、确定方案和计算方法;二、了解应用系统的硬件配置、性能指标;三、建立系统数学模型,确定控制算法和操作步骤;四、画程序流程图;表

5、示程序结构和程序功能。五、编制源程序。1.合理分配存储器单元和了解 I/O 接口地址。2.按功能设计程序,明确各程序之间的相互关系。3.用注释行说明程序,便于阅读、修改和调试。常用程序结构:顺序程序、分支程序、循环程序、子程序。4-3 顺序程序顺序程序又称简单程序,程序走向只有一条路径。例:双字节变补程序(设数据在 R4R5 中):MOV A,R5 ;取低字节CPL AADD A,#01H ;低字节变补MOV R5,AMOV A, R4 ;取高字节CPL A开 始结 束YN条 件 满 足 ?处 理处 理 处 理处 理ADDC A,#00H ;高字节变补MOV R4,AP84: 例题( 顺序)例

6、 4.1 三字节无符号数相加,其中被加数在内部 RAM 的 50H、51H 和 52H单元中;加数在内部 RAM 的 53H、54H 和 55H 单元中;要求把相加之和存放在 50H、51H 和 52H 单元中,进位存放在位寻址区的 00H 位中。程序:MOV R0,#52HMOV R1,#55HMOV A, R0ADD A,R1MOV R0 ,ADEC R0DEC R1MOV A,R0ADDC A,R1MOV R0,ADEC R0DEC R1MOV A,R0ADDC A,R1MOV R0,ACLR AADDC A,# 00HMOV R0,# 00HMOV R0,A例:压缩式BCD码分解成为单

7、字节BCD码。MOV R0,#40H ;设指针MOV A,R0 ;取一个字节52H51H50H 5H54H53H52H51H50H0HCYMOV R2,A ;暂存ANL A,#0FH ;高半字节清 0INC R0MOV R0,A ;保存数据个位MOV A,R2SWAP A ;十位换到低半字节ANL A,#0FHINC R0MOV R0,A ;保存数据十位4-4 分支程序由条件转移指令构成程序判断框部分,形成程序分支结构。4-4-1 单重分支程序一个判断决策框,程序有两条出路。两种分支结构:如右图。例: 求 R2 中补码绝对值,正数不变,负数变补。MOV A,R2JNB ACC.7,NEXT ;

8、为正数?为 0 跳CPL A ;负数变补INC AMOV R2,ANEXT: SJMP NEXT ;结束P85:例题(单分支)例 4.2假定在外部 RAM 中有 ST1、ST2 和 ST3 共 3 个连续单元,其中 ST1 和ST2 单元中分别存放着两个 8 位无符号二进制数,要求找出其中的大数并存入ST3 单元中。START:CLR CMOV DPTR,#ST1MOVX A,DPTRMOV R2,A片 内 RAM 42H 0 十 41H 0 个 40H YN条 件 满 足 ?影 响 条 件处 理 段YN条 件 满 足 ?影 响 条 件处 理 1处 理 2INC DPTRMOVX A,DPTR

9、SUBB A,R2JNC BIG1XCH A,R2BIG0: INC DPTRMOVX DPTR,ARETBIG1: MOVX A,DPTRSJMP BIG0例:行李计价:当 G5,M=G3;当 G5,M=G3+(G-5)(5-3) 。FRT:MOV A,40H ;取行李重量计价单位 GMOV R3,AMOV B,# 03H ;M=G3MUL ABMOV R2,A ;暂存 3GMOV A,R3 ;取回 GCJNE A,# 05H,L1 ;G5 ? G 5 跳 L1SJMP WETCL1: JC WETC ;是,转至 WETC(C=1 即 G5 跳)SUBB A,#05H ;否则 M=3G+2(

10、G-5)RLC AADD A,R2SJMP L2WETC:MOV A ,R2L2: MOV 41H,A ;存结果 MRET4-4-2 多重分支程序一、多次使用条件转移指令,形成两个以上判断框。例:求符号函数 Y=SGN(X)+1 (当 X0)SGN(X)= 0 (当 X=0)-1 (当 X0)SYMB: MOV A,40H ;取 X内 部 RAM41H40H重 量 ( 变 量 )价 格 ( 结 果 )JZ STOR ;X=0 跳, Y=XJB ACC.7,MINUS ;X0( A.7=1 跳)MOV A,# 01H ;X0, Y=+1SJMP STORMINUS:MOV A,#0FFH ;X0

11、, Y= -1STOR: MOV 41H,A ;保存 YRETP86: 例题( 多分支)例4.3某温度控制系统,采集的温度值(Ta)放在累加器 A中。此外,在内部RAM54H单元存放控制温度下限值(T54 ),在55H单元存放控制温度上限值(T55)。若Ta T55,程序转向JW(降温处理程序);若Ta T54,则程序转向SW (升温处理程序);若T55TaT54,则程序转向FH(返回主程序)。:去FH思路: Ta=T55? : TaT55 :去JWTaT55:Ta=T54? :去FH: TaT54:去SWTaT54:去FH算法: (1) TaT55:去JW(2) TaT54:去SW(3) T

12、55Ta T54:去FH开 始结 束Y NX 0 ?取 X Y +1X 0?Y -1Y 0保 存 Y NY 内 部 RAM41H40HX( 变 量 )Y( 函 数 )程序:CJNE A,55H,LOOP1AJMP FHLOOP1:JNC JWCJNE A,54H,LOOP2AJMP FHLOOP2:JC SWFH: RET二、按分支号转移。如:当分支号=0,程序转移到ADDR0处;当分支号=1,程序转移到ADDR1处; 。1、利用查地址表法:( P87)例4.4有BR0、BR1 、BR2和BR3共4个分支程序段,各分支程序段的功能依次是从内部RAM256B范围取数、从外部 RAM低256B 范

13、围取数、从外部RAM4KB范围取数和从外部RAM64KB范围取数。并假定R0中存放取数地址低8 位地址,R1中存放高8位地址,R3中存放分支序号值。假定以BRTAB作差值表首地址,BR0_BRTAB BR3_BRTAB为差值。分析:差值表=分支入口地址该表首址程序: MOV A,R3MOV DPTR,#BRTABMOVC A,A+DPTRJMP A+DPTRBRTAB:DB BR0_BRTABDB BR1_BRTABDB BR2_BRTABDB BR3_BRTABBR0: MOV A,R0SJMP BREBR1: MOVX A,R0SJMP BREBR2: MOV A,R1A ?转向 0分支A

14、=0A=1A=n-1A=n转向 1分支 转向n-1分支 转向 n分支30H首 址 40H60H20H10H301H302H303H DPTRANL A,#0FHANL P2,#0F0HORL P2,AMOVX A,R0BR3: MOV DPL,R0MOV DPH,R1MOVX A,DPTRBRE: SJMP 2、使用转移指令表法。用分支转移指令 AJMP P88: 例题( 查转移指令表 )4.5假定键盘上有 3 个操作键,功能说明如下表: MOV DPTR, #3000HCLR CRLC AJMP A+DPTRAJMP DSAJMP XSAJMP CR 3、利用堆栈操作法: (P88)设分支号

15、已存入 A。MTJS:MOV DPTR, #TAB ;取分支入口地址表首地址CLR C ;分支号2RLC AMOV R2,AMOVC A,A+DPTR ;取分支地址低位PUSH A ;入栈保存MOV A,R2INC AMOVC A,A+DPTR ;取分支地址高位PUSH A ;入栈保存RET ;分支地址PC,转移键 功 能读 数 据插 入写 数 据 键 值010203处 理 程 序DSXSCRTAB:DW ADDR0 ;分支程序入口地址表 DW ADDR1ADDR0: ;程序段 0 4-5 循环程序包含多次重复执行的程序段,循环结构使程序紧凑4-5-1 循环程序的构成各个环节任务:一、初始化部

16、分:循环准备工作。如:清结果单元、设指针、设循环控制变量初值等。二、循环体:循环工作部分:需多次重复处理的工作。循环控制部分:1.修改指针和循环控制变量。2.检测循环条件:满足循环条件,继续循环,否则退出循环。三、结束部分:处理和保存循环结果。允许 0 次循环的循环结构:在循环工作之前检测循环条件。4-5-2 单重循环简单循环结构:循环体中不套循环。例:求 n 个单字节数据的累加,设数据串已在 43H 起始单元,数据串长度在42H 单元,累加和不超过 2 个字节。SUM: MOV R0,#42H ;设指针MOV A,R0MOV R2,A ;循环计数器nCLR A ;结果单元清 0高 位 地 址

17、低 位 地 址304H305HROM 内 部 RAMA 31H32HYN循 环 控 制 ?循 环 工 作循 环 结 束循 环 初 始 化片 内 RAM Xn 43H X1 42H n 41H SUMH 40H SUML MOV R3,AADD1:INC R0 ;修改指针ADD A,R0 ;累加JNC NEXT ;处理进位(C=0 跳)INC R3 ;有进位,高字节加 1NEXT:DJNZ R2,ADD1 ;循环控制:数据是否加完?MOV 40H,A ;循环结束,保存结果MOV 41H,R3RET循环控制方法:计数控制、特征标志控制。一、计数控制:(参看 P89例 4.6)设循环计数器,控制循环

18、次数。正计数和倒计数两种方式。例:为一串 7 位 ASCII 码数据的 D7 位加上奇校验,设数据存放在片外 RAM的2101H 起始单元,数据长度在 2100H 单元。MOV DPTR,#2100HMOVX A,DPTRMOV R2,ANEXT:INC DPTRMOVX A,DPTRORL A,#80HJNB P,PASS ;P=0:1 的个数为偶数,跳MOVX DPTR,APASS: DJNZ R2,NEXTDONE:SJMP DONE二、特征控制:设定循环结束标志实现循环控制。 (参看 P89例 4.7)例:找正数表最小值。正数表存在片外 RAM 中以 LIST 为起始单元,用-1 作为

19、结束标志。START:MOV DPTR,# LIST ;数表首地址MOV B,#127 ;预置最小值NEXT:MOVX A,DPTR ;取数INC DPTR ;修改指针CJNE A,#-1,NEXT1 ;是否为数表结尾?(A -1 跳)SJMP DONE ;循环结束片 外 RAM 2102H 01101000 2101H 00101101 2100H n LIST片 外 RAM.-1NEXT1:CJNE A,B,NEXT2 ;比较(A B 跳)NEXT2:JNC NEXT ;C=0 跳MOV B,A ;保存较小值SJMP NEXTDONE:SJMP DONE习题:统计一班考试为 100 分和不

20、及格人数,成绩单在 41H 起始单元。4-5-3 多重循环循环体中套循环结构。以双重循环使用较多。例:将内存一串单字节无符号数升序排序。(参看P102例4.14)步骤:每次取相邻单元的两个数比较,决定是否需要交换数据位置。第一次循环,比较N-1次,取到数据表中最大值。第二次循环,比较N-2次,取到次大值。第N-1次循环:比较一次,排序结束。SORT:MOV A,#N-1 ;N个数据排序MOV R4,A ;外循环次数LOOP1:MOV A,R4MOV R3,A ;内循环次数MOV R0,#TAB ;设数据指针LOOP2:MOV A,R0 ;取二数MOV B,AINC R0MOV A,R0片 内

21、RAM MAX 5 2 4 1 TAB 3 开 始循 环 结 束 YN内 循 环 控 制 ?外 循 环 初 始 化外 循 环 工 作 ?NY内 循 环 初 始 化循 环 工 作开 始循 环 结 束YNA B?外 循 环 次 数 R4NYB ( R0) A( +1)内 循 环 次 数 R3 表 首 TAB0( R0) ( R0+1)R0 R0+1R3 R3-1=0?YR4 R4-1=0? NCJNE A,B ,L1 ;比较(AB跳)L1:JNC UNEX ;AB,不交换DEC R0 ;否则交换数据XCH A,R0INC R0MOV R0 , AUNEX:DJNZ R3,LOOP2 ;内循环结束?

22、DJNZ R4,LOOP1 ;外循环结束?RET软件延时程序:用循环程序将指令重复多次执行,实现软件延时。1、单循环定时程序: (参看 P98)MOV R5,#TIMELOOP:NOPNOPDJNE R5,LOOP设:f OSC=6MHz,则 T=12/ 6MHz=2 s t=(1+4 TIME)T=2+8TIME (s )2、多重循环定时:用循环程序将指令重复多次执行,实现较长时间的延时。试计算延时程序的执行时间。 (参看 P99)源程序 指令周期(M) 指令执行次数DELAY:MOV R6,#64H (=100) 1 1I1: MOV R7,#0FFH (=255 ) 1 100I2: D

23、JNZ R7,I2 2 100255DJNZ R6,I1 2 100RET 2 1延时时间计算:(设时钟 fOSC=12MHz) M =1 st=(11+1100+2100255+2100+21)M= 51.303 ms习题:DELAY:MOV R6,#100D1:MOV R7,#10D2:NOPDJNZ R7,D2DJNZ R6,D1RET计算延时程序的执行时间(设时钟 fOSC=6MHz,M=2s) 。t=6.606 ms4-6 子程序子程序:能完成某项特定功能的独立程序段,可被反复调用。4-6-1 子程序设计一、子程序入口用标号作为子程序名。二、调用子程序之前设置好堆栈。三、用返回指令

24、RET 结束子程序,并保证堆栈栈顶为调用程序的返回地址。四、子程序嵌套须考虑堆栈容量。五、提供足够的调用信息:如:子程序名、子程序功能、入口参数和出口参数、子程序占用的硬件资源、子程序中调用的其他子程序名。4-6-2 子程序的类型按子程序与主程序之间传递参数的方式分类。入口参数:调用子程序之前,需要传给子程序的参数。出口参数:子程序送回调用程序的结果参数。设计子程序应满足通用性的要求,不针对具体数据编程。如:1. 子程序功能为求单字节数的立方:AA 3,入口参数和出口参数为 A。2. 子程序功能为求单字节数的 n 次方:(41H)(42H) (40H) A,入口参数为(40H) 和 A,出口参

25、数为(42H)(41H)。 选用不同的参数传递方式:1.寄存器传送参数;2.存储器传送参数;3.堆栈传送参数。例:将R4R5R6中三个字节数据对半分解,变成6个字节,存入显示缓冲区(DISMEM0DISMEM5)。1)子程序UFOR1的功能:将A累加器中单字节数据,对半分解成两个字节,存入主 程 序 CAL S CAL S 子 程 序 S RET R0所指向的相邻两个单元。UFOR1:MOV R0,#00HXCHD A,R0 ;保存低半字节INC R0 ;修改指针MOV R0,#00HSWAP AXCHD A,R0 ;保存高半字节RET2)调用子程序UFOR1之前,将待分解的内容送A,存放地址

26、送R0 。例: 比较两个数据串是否完全相等,若完全相等,A=0;否则,A=FFH。PMT:MOV R2,A ;设数串长度CHC:MOV A,R0 ;各取数串中的一个数MOV 42H,R1CJNE A,42H,NOM ;是否相等?不相等转移INC R0 ;相等,修改指针INC R1DJNZ R2,CHC ;全部比较完?MOV A,#00H ;完全相等SJMP PENDNOM:MOV A,#0FFH ;不完全相等PEND:RET例:查表求出数据的ASCII码,再以字符形式输出。1)子程序HEXASC功能:取出堆栈中数据,查表将低半字节转换成ASCII码送累加器A。2)分别将待转换数据入栈,然后调用

27、子程序HEXASC。(参看P96)RAM显 示 缓 冲 区 地 址 数 据 DISMEM 5 0 R6H DISE 4 0 R6L DISMEM 3 0 R5H DISE 2 0 R5L DISMEM 1 0 R4H DISE 0 0 R4L RAM R0+1 0 AH R0 0 AL MOV SP,#30HPUSH 40H ;入口参数入栈LCALL HEXASCPOP AHEXASC:DEC SP ;跳过返回地址DEC SPPOP A ;取入口参数 ;查表求ASCII码PUSH A ;保存出口参数INC SP ;指向返回地址INC SPRETDB 0,1, ;ASCII码表4-7 算术运算程

28、序4-7-1 多字节加减运算程序1. 多字节加法子程序,Z=X+Y 。 (参看 P90)ADDS:CLR CMOV R2,#23H LOOP:MOV A,R0ADDC A,R1 ;加一字节MOV R0,A ;存和一字节INC R0 ;修改指针INC R1DJNZ R2,LOOP ;全部字节加完?RET习题 1:编写十进制多字节加法子程序,Z=X+Y 。习题 2:编写多字节减法子程序,Z=X-Y。思考题:修改程序使运算结果保存到其他存储单元。4-7-2 多字节无符号数乘除运算RAM 41H 23 40H 01 3H 32H 31H 30H YH R1 YL XH R0 XL 相加计算多字节乘法程

29、序。步骤:1.部分积清零。2.检测乘数各位,为1则部分积对位加被乘数,否则加0 。3.对位方法:被乘数左移或部分积右移。(参看P92 )例:双字节相乘 R2R3R6R7R4R5R6R7 解:部分积清零,右移检测乘数,决定部分积是否加被乘数,部分积右移对位。相减计算多字节除法程序。步骤:1.对齐高位被除数试减除数。2.若够减商上 1,不够减商上 0 且恢复余数。3.余数左移或除数右移对位。4.循环重复前 3 步,直至取够相应位数的商。“四舍五入”:得到余数后,判断余数乘 2 后是否大于除数,若大于除数则商再加“1”;否则不加。(参看 P94)例:R2R3R4R5R6R7R4R5 (余数R2R3)

30、解:1.判断 R2R3 R6R7?使商不大于 16 位。2.被除数左移 1 位,试减除数。3.若够减,商加 1 并保留余数。4-7-3 代码转换程序(一) 十六进制数转换为ASCII码;(二) ASCII码转换为十六进制数。09的ASCII码:3039H;AF的ASCII码:4146H。十六进制数转换为ASCII码:HASC:CJNE A,#0AH,NN: JNC N1(C=0跳N1)ADD A,#30HSJMP SEN1: ADD A,#37HSE: RETASCII码转换为十六进制数:AHEX: CLR CSUBB A,#30HCJNE A,#0AH,NN: JC N1SJMP AEN1:

31、 SUBB A,#11HCJNE A,#06H,N2N2: JNC ERRADD A,#0AHSJMP AEERR: MOV A,#0FFHAE: RETP96: 例题( 数制转换)例4.11在内部RAM的hex单元中存有2位十六进制数,试将其转换为ASCII码,并存放于asc和asc+1两个单元中。设(hex)=7BHMOV SP,#3FHMAIN:PUSH hexACALL HASCPOP asc MOV A,hexSWAP APUSH ACCACALL HASCPOP asc+1 子程序 (HASC):HASC:DEC SPDEC SPPOP ACCANL A,#0FHADD A,#7

32、(A=12H)MOVC A,A+PCPUSH ACCINC SPINC SPRETASCTAB:DB “0,1,2,3,4,5,6,7”DB “8,9,A,B,C,D,E,F”(三) BCD码与二进制数之间的转换有乘法和除法两种转换方式。 1BCD 码转换为二进制数:D = dn-110n-1+dn-210n-2+d1101+d0100 =( dn-110+dn-2 )10 +dn-3 )10 + d1) 10+ d0“整数十翻二”:从最高位开始,按二进制运算法则循环。“乘十加次低位”:B=B10+bi。2二进制数转换为 BCD 码:B = bn-12n-1 + bn-22n-2 + + b1

33、21 + b020=( bn-12 + bn-2 )2 + bn-3)2 + b1)+ b0“整数二翻十”:从最高位开始,按十进制运算法则循环。“乘二加次低位”:D=D2+di 。除法转换式:bn-12n-1 + bn-22n-2+ +b0 = dm-110m-1 + dm-210m-2+ +d0两边同时除基数,两边的整数或小数应该分别相等。R4010R3 R4+ (R0)R3 R4R30除基数,取出 1 位余数,得到的商继续除基数取余数。循环“除基取余 ”操作,得到转换进制的各位系数。编程习题要求:1.为程序标明必要注释。2.上机调试通过。3.给出程序执行前设定的数据,并记录程序执行后的结果

34、数据。4.要求写明数据的存储单元。小结:机器语言 (Machine Language)1、有三类 汇编语言 (Assemble)高级语言 (High Level Language)不同计算机语言的应用:源程序通过编译得到机器能执行的目标程序。汇编语言程序可以高效率利用计算机资源,目标程序占用内存少,执行速度快,适合于自动测控系统反应快速、结构紧凑的要求。实际应用中,常与 C语言配合使用。高级语言程序容易掌握,通用性好,但编译程序系统开销大,目标程序占用内存多,且执行时间比较长,多用于科学计算、工业设计、企业管理。编译执行方式:将源程序编译成机器语言的目标,然后执行,生成并保留目标程序。解释执行

35、方式:逐条语句边解释边执行,即每解释一条语句就执行一条语句。高级语言:在科学计算方面(要求机器内存大,因编译后的目标程序比汇编语言的源程序大) 。汇编语言:在实时控制中。单 片 机 指 令伪 指 令宏 指 令 源 程 序编 辑 程 序 交 叉 汇编 程 序 列 表 文 件目 标 文 件 单 片 机调 试 运 行语言处理方式应用2、宏指令与子程序的区别:宏指令:在汇编语言的源程序中,若有一段程序要多次使用,为了使在源程序中不重复书写这样的一段程序,可用一条宏指令来代替,由汇编程序在汇编时产生所需要的代码。优点:可简化源程序。与子程序不同:宏指令并没有简化目标程序,而子程序可以。3、伪指令:ORG、DB、DW、EQU、END 等。4、程序设计步骤。5、常用程序结构:顺序结构、分支结构、循环结构(1)顺序程序:直线程序或简单程序单重分支(2)分支程序 多次使用条件转移指令多重分支 地址表法按分支号转移 转移指令表法过堆栈操作(3)循环程序:构成:初始化、循环体、控制变量的修改、循环次数的控制。延时;控制 记数控制特征标志控制

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 高等教育 > 大学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报