书签 分享 收藏 举报 版权申诉 / 23
上传文档赚钱

类型2013教科版选修1《程序设计的基本方法》ppt课件1.ppt

  • 上传人(卖家):三亚风情
  • 文档编号:2730745
  • 上传时间:2022-05-22
  • 格式:PPT
  • 页数:23
  • 大小:261.50KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《2013教科版选修1《程序设计的基本方法》ppt课件1.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    程序设计的基本方法 2013 教科版 选修 程序设计 基本 方法 ppt 课件
    资源描述:

    1、第5章 汇编语言程序设计 5.6 汇编语言程序设计的基本方法汇编语言程序设计的基本方法通常通常, ,编制一个汇编语言源程序应按如下步骤进编制一个汇编语言源程序应按如下步骤进行行: : 明确任务明确任务, ,确定算法。确定算法。 绘制流程图绘制流程图( (包括确定内存单元和分配寄存包括确定内存单元和分配寄存器器) )。 根据流程图编写汇编语言程序。根据流程图编写汇编语言程序。 上机调试程序。上机调试程序。程序的基本结构有四种:顺序结构、分支结构、程序的基本结构有四种:顺序结构、分支结构、循环结构和子程序结构。循环结构和子程序结构。第5章 汇编语言程序设计 5.6.1 顺序程序设计顺序程序设计顺序

    2、结构也称线性结构,其特顺序结构也称线性结构,其特点是其中的语句或结构被连续执行。点是其中的语句或结构被连续执行。顺序程序是最简单的,也是最顺序程序是最简单的,也是最基本的一种程序结构。基本的一种程序结构。这种结构的这种结构的程序从开始到结尾一直是顺序执行程序从开始到结尾一直是顺序执行的,中途没有任何分支的,中途没有任何分支。从这种结。从这种结构的流程图来看,除了有一个起始构的流程图来看,除了有一个起始框,一个终止框外,就是若干执行框,一个终止框外,就是若干执行框,没有判断框。指令指针框,没有判断框。指令指针IP值线值线形增加,形增加,IP=IP+1S1S2S3开始结束第5章 汇编语言程序设计

    3、例例1求两个数的平均值。这两个数分别存放在求两个数的平均值。这两个数分别存放在X单元和单元和Y单元中,而平均值放在单元中,而平均值放在Z单元中。源程序编制单元中。源程序编制如下如下:DATA SEGMENTX DB 8CHY DB 64H ;赋予初值赋予初值ZDB ? ;分配存储空间分配存储空间DATA ENDSSTACKSEGMENTDW 20H DUP(0) ;给堆栈段分配一个给堆栈段分配一个TOP LABLE WORD ;据区共据区共32个字,每个个字,每个STACKENDS ;字的内容均为字的内容均为0第5章 汇编语言程序设计 CODESEGMENTMAIN PROC FAR ;定义子

    4、程序名为MAIN,类型FAR ASSUME CS:CODE ;把段寄存器和 ASSUME DS:DATA ;段名对应起来 ASSUME SS:STACKSTART:PUSH DSMOV AX, 0PUSH AXMOV AX, DATA ;给数据段赋初值MOV DS, AXMOV AX, STACKMOV SS, AXMOV SP, OFFSET TOP第5章 汇编语言程序设计 MOV AL, XADD AL, Y ;两数低字节相加结果送ALMOV AH, 0ADC AH, 0 ;两数高字节带进位相加SHR AX, 1MOV Z, ALRETMAINENDPCODEENDSEND START第5

    5、章 汇编语言程序设计 例2 编写程序,计算(W-(X*Y+Z-100)/W,其中W、X、Y、Z均为16位带符号数,计算结果的商存入AX,余数存入DX。 例3 把非压缩十进制数DAT1转换为压缩十进制数第5章 汇编语言程序设计 例2编写程序,计算(W-(X*Y+Z-100)/W,其中W、X、Y、Z均为16位带符号数,计算结果的商存入AX,余数存入DX。DATA SEGMENTW DW 268X DW 73Y DW 48Z DW 85DATA ENDSSTACK SEGMENT DW 100 DUP(?)STACK ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATA,S

    6、S:STACKSTART:MOV AX,DATA MOV DS,AX MOV AX,X ;计算X*Y IMUL Y MOV CX,AX ;用CX存储结果低位MOV BX,DX ;用BX存储结果高位 MOV AX,Z ;计算X*Y+Zl CWDl ADD CX,AXl ADC BX,DXl SUB CX,100l SBB BX,0l MOV AX,Wl CWD l SUB AX,CXl SBB DX,BXl IDIV Wl MOV AH,4CHl INT 21Hl CODE ENDSl END START第5章 汇编语言程序设计 例3 把非压缩十进制数DAT1转换为压缩十进制数。 STACK 6

    7、4H DATA DAT1 DW 0908H ;非压缩十进制数0908H CODE BEGIN: MOV AX,DATA MOV DS,AX MOV AX,DAT1 ;AX0908H MOV CL,4 ;CL 4 SAL AH,CL ;09字节左移4位,AH=90H ROL AX,CL ;9008H字循环左移4位,AX=0089H ROL AL,CL ;89字节循环左移4位,AL=98H MOV BYTE PTR DAT1,AL ;DAT198H,压缩十进制数98H MOV AH,4CH ;返回DOS INT 21H END BEGIN 返返 回回第5章 汇编语言程序设计 5.6.2 分支程序设

    8、计分支程序设计分支程序结构也称条件结构,通常是在两种或两分支程序结构也称条件结构,通常是在两种或两个以上的不同的操作中选择其中的一个,如下图所示:个以上的不同的操作中选择其中的一个,如下图所示:分支是通过条件转移指令来实现的。分支结构有分支是通过条件转移指令来实现的。分支结构有一个共同点:运行方向总是向前的一个共同点:运行方向总是向前的。IP受标志位的影受标志位的影响而跳变,影响标志的指令响而跳变,影响标志的指令CMP、TEST、JXX条件S1S2条件SS1S2Sn条件NNYY第5章 汇编语言程序设计 两路分支程序设计 例4用比较指令和条件转移指令实现两路分支的程序段。 MOV AX,M ;假

    9、定M和N为有符号数 MOV BX,N CMP AX,BX ;比较 M和N的大小,影响标志位,准备条件 JG NEXT ;MN时转移,注意若M、N为无符号数时用JA指令 ;分支程序2 JMP DONE NEXT: ;分支程序1 DONE:RET第5章 汇编语言程序设计 例5 现有一符号函数:1 当X0时Y= 0 当X=0时 -1 当X0时假定X为-25,且存放在VARX单元中,函数值Y存放在VARY单元,试编写程序根据X的值确定函数Y的值。根据题意画出流程图如下:第5章 汇编语言程序设计 实现符号函数程序的流程图开始ALXAL0?Y-1结束AL0Y1Y0YYNN第5章 汇编语言程序设计 编写程序

    10、如下:DSEGSEGMENTVARX DB -25VARY DB ?DSEGENDSCSEGSEGMENTASSUME CS:CSEG,DS:DSEGSTART:MOV AX, DSEGMOV DS, AXMOV AL, VARXCMP AL, 0JGE NEXTMOV AL, -1JMP HALT第5章 汇编语言程序设计 NEXT:JE HALTMOV AL, 1HALT:MOV VARY, AL MOV AH, 4CHINT 21HCODEENDSEND START第5章 汇编语言程序设计 例 6 已知X是单字节带符号数,请设计计算下列表达式的程序。Y= X+20 (X0)|X| (X0)

    11、第5章 汇编语言程序设计 例 6 已知X是单字节带符号数,请设计计算下列表达式的程序。 Y= 程序如下: DATA SEGMENT X DB ? Y DB ? DATA ENDS CODE SEGMENT ;代码段 START:PROC FAR ASSUME CS:CODE,DS:DATA MOV AX,0 X+20 (X0)|X| (X0)l MOV AX,DATA ;初始化DSl MOV DS,AXl MOV AL,X ;取数Xl CMP AL,0 ;准备条件l JNS PLUS ;X0则转移l NEG AL ;X0则求补l JMP DONElPLUS: ADD AL,20 ;X0时,X+

    12、20lDONE: MOV Y,AL ;计算结果送Yl RET ;返回lSTART ENDPlCODE ENDSl END START ;汇编结束第5章 汇编语言程序设计 分支结构程序设计的关键在于准确地知道操作结果影响分支结构程序设计的关键在于准确地知道操作结果影响的标志位状态和正确地使用条件转移指令。根据对条件的标志位状态和正确地使用条件转移指令。根据对条件的判断而选择不同的处理方法是人的基本智能体现。的判断而选择不同的处理方法是人的基本智能体现。例例:设内存中有三个互不相等的无符号字数据,分别:设内存中有三个互不相等的无符号字数据,分别是放在是放在ARG开始的字单元,编制程序将其中最大值存

    13、开始的字单元,编制程序将其中最大值存入入MAX单元。单元。分析:求三个无符号数中的最大值,只要把三个数据两分析:求三个无符号数中的最大值,只要把三个数据两两比较,用两比较,用JA/JNB/JNA/JC等指令就可判断两数的大小,等指令就可判断两数的大小,从而选出其中最大值。从而选出其中最大值。源程序如下:源程序如下:SSEG SEGMENT STACK STK DB 20 DUP (0)SSEG ENDS 第5章 汇编语言程序设计 DSEG SEGMENTARG DW 7138H,84A6H,29EHMAX DW ?DESG ENDSCSEG SEGMENT ASSUME CS:CSEG,DS:

    14、DSEG,SS:SSEGFMAX:MOV AX,DSEG MOV DS,AX MOV SS, AX MOV SP, SIZE STK LEA SI, ARG MOV AX, SI MOV BX,SI+2 CMP AX, BX第5章 汇编语言程序设计 JAE FMAX1MOV AX, BXFMAX1 : CMP AX,SI+4JAE FMAX2 MOV AX,SI+4FMAX2 : MOV MAX,AXMOV AH,4CHINT 21HCSEG ENDS END FMAX第5章 汇编语言程序设计 循环结构程序设计循环体图图2先判断后执行循环结构先判断后执行循环结构循环初始化NY循环控制部分循环初

    15、始化循环体N循环控制部分Y图图1 先执行后判断循环结构先执行后判断循环结构第5章 汇编语言程序设计 循环程序一般由四个部分组成:循环程序一般由四个部分组成:(1)循环初值部分:这是为了保证循环程序能正常进)循环初值部分:这是为了保证循环程序能正常进行循环操作而必须做的准备工作。循环初值分两类:一行循环操作而必须做的准备工作。循环初值分两类:一类是循环工作部分的初值,别一类是控制循环结束条件类是循环工作部分的初值,别一类是控制循环结束条件的初值。的初值。(2)工作部分:即需要重复执行的程序段。这是循环)工作部分:即需要重复执行的程序段。这是循环的中心,称之为循环体。的中心,称之为循环体。(3)修

    16、改部分:按一定规律修改操作数地址及控制变)修改部分:按一定规律修改操作数地址及控制变量,以便每次执行循环体时得到新的数据。量,以便每次执行循环体时得到新的数据。(4)控制部分:用来保证循环程序按规定的次数或特)控制部分:用来保证循环程序按规定的次数或特写条件正常循环。写条件正常循环。 第5章 汇编语言程序设计 例题 例7 把从BUF单元开始的80个16位无符号数按从大到小的顺序排列。第5章 汇编语言程序设计 例题 例4-26 把从BUF单元开始的80个16位无符号数按从大到小的顺序排列。l DSEG SEGMENTl BUF DW 80 DUP(?) l DSEG ENDSl CSEG SEGMENTl ASSUME CS:CSEG,DS:DSEGl START:MOV AX,DSEGl MOV DS,AXl LEA DI,MEMl MOV BL,79l LOOP1:MOV SI,DIl MOV CL,BLlLOOP2:MOV AX,SIl ADD SI,2l CMP AX,SIl JNC NEXTl MOV DX,SIl MOV SI-2,DXl MOV SI,AXl NEXT: DEC CLl JNZ LOOP2 lDEC BL l JNZ LOOP1lMOV AH,4CHl INT 21Hl CSEG ENDSl END START

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:2013教科版选修1《程序设计的基本方法》ppt课件1.ppt
    链接地址:https://www.163wenku.com/p-2730745.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库