- 1、本文档共73页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[电脑基础知识]汇编语言程序设计
例如,变量x的符号函数可用下式表示: y=1 当x>0 y=0 当x=0 y=-1 当x<0 在程序中,要根据x的值给y赋值,如图4-5所示。先把变量x从内存中取出来,执行一次“与”或“或”操作,就可把x值的特征反映到标志位上。于是就可以判断是否等于零,若是(x=0),则令y=0;若否(x≠0),再判断是否小于零,若是,则令y=-1;不是,就令y=1。 SIGEF MOV AX,BUFFER OR AX,AX JE ZERO JNS PLUS MOV BX,0FFH JMP CONT1 ZERO: MOV BX,0 JMP CONT1 PLUS: MOV BX,1 CONT1: 1. 用计数器控制循环 在循环程序中,控制循环的方法因为要求不同而有若干种。最常用的是用计数器控制循环。 例4-2在一串给定个数的数中寻找最大值(或最小值),并且放至指定的存储单元。每个数用16位表示。 NAME SEARCH_MAX DATA SEGMENT BUFFER DW X1,X2,…,Xn COUNT EQU $ - BUFFER MAX DW ? DATA ENDS STACK SEGMENT PAPA STACK′STACK′ DB 64 DUP(?) TOP EQU $ - STACK STACK ENDS CODE SEGMENT START PROC FAR ASSUMECS: CS:CODE,DS: DATA,SS: STACK BEGIN: PUSH DS MOV AX,0 PUSH AX MOV AX,DATA MOV DS,AX MOV AX,STACK MOV SS,AX MOV AX,TOP MOV SP,AX MOV CX,COUNT LEA BX,BUFFER MOV AX,[BX] INC BX DEC CX AGAIN: CMP AX,[BX] JGE NEXT MOV AX,[BX] NEXT: INC BX LOOP AGAIN START ENDP CODE ENDS END BEGIN 2. 多重循环 程序常常在一个循环中包含另一个循环,这就是多重循环,例如多维数组的运算就要用到多重循环。 下面是一个多重循环的例子(没有精确计算延时时间): Delay: MOV DX,3FFH TIME: MOV AX,0FFFFH TIME1: DEC AX NOP JNE TIME1 DEC DX JNE TIME RET 开始 被加数+加数 - AX AX- (10054)和(10055)单元 暂停 初始化: 段地址DS:1000H 被加数指针SI - 50H 加数指针DI - 52H 和的指针BX - 54H 清除AX和CF 被加数- AX MOV AX, 1000H MOV DS, AX ; DS=1000H MOV SI, 0050H ;被加数指针 MOV DI, 0052H ;加数指针 MOV BX, 0054H ;和的指针 CLC ;清CF XOR AX, AX ;清AX MOV AX, [SI] ;取被加数到AX ADD AX, [DI] ;相加运算,AX - AX + [DI] MOV [BX], AX ;存一个字到[BX] HLT ;暂停 4.5.2 分支程序设计 4.5.3 循环程序设计 循环程序:强制CPU重复执行某一指令系列(程序段)的一种程序结构形式。 一般由4部分构成: (1)初始化:建立循环次数计数器,设定变量和存
您可能关注的文档
- [电脑基础知识]p_5.ppt
- [电脑基础知识]VB1-程序设计.ppt
- [电脑基础知识]VB程序 ch2.ppt
- [电脑基础知识]ThinkPad 历史与文化.ppt
- [电脑基础知识]VFP习题.doc
- [电脑基础知识]U盘修复.doc
- [电脑基础知识]Week - 14 LAB Database.ppt
- [电脑基础知识]Win XP Win 7双系统安装方法.ppt
- [电脑基础知识]VxWorks系统启动过程及相应文件介绍.ppt
- [电脑基础知识]Windows XP 电脑三.docx
- 山东省威海乳山市银滩高级中学2022-2023学年高三9月月考物理试题.docx
- 山东省日照第一中学2020届高三上学期期中考试英语试题 Word版含答案.doc
- 山东省实验中学2023届高三第二次诊断考试语文试题.docx
- 山东省威海乳山市银滩高级中学2023届高三上学期9月月考日语试题 word版无答案.docx
- 山东省实验中学2023届高三第二次诊断考试地理试题.docx
- 山西省运城市2022-2023学年高三年级入学新生教学质量监测考试地理试题.docx
- 山东省实验中学2023届高三第二次诊断考试历史试题.docx
- 山东省实验中学2019届高三第二次诊断性考试数学试题(文).doc
- 山东省济南市历城第二中学2020届高三上学期期中考试化学试题 Word版含答案.doc
- 山东省威海乳山市银滩高级中学2022-2023学年高三9月月考政治试题.docx
文档评论(0)