还剩28页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
汇编程序设计汇编语级编语计言是低程言,它直接与算机硬件交互汇编计课将习汇编语语计程序设程深入学言的法、指令集和程序设方法作者uj uyfvgfxjuyvjhvhkg课程简介课程目标课程内容习汇编语础识编汇编语结内组执过学言的基知和程技巧言概述,基本构,指令集,存织,程序行程汇编开调试掌握程序的发流程和方法数传术逻辑转独编写简单汇编据送指令,算运算指令,运算指令,控制移指令,较能够立的程序比指令,串操作指令断过调调调中处理,程用,宏指令,BIOS功能用,DOS功能用汇编语言概述汇编语级编语语言是一种低程言,它与机器言非常接近汇编语记来码阅读编写言使用助符表示机器指令,使代更易于和汇编语汇编转换为语计执言程序需要由器机器言,才能被算机行汇编语言的基本结构指令操作数汇编语单数称为数言中的基本位是指令,指令需要操作的据操作,对应内每条指令一个特定的机器操可以是寄存器、存地址或立即数作标号注释标给数释释码读号是指令或据段起的名字,注用于解代,提高可性,转访问汇编方便程序跳和但不会被器处理寄存器概述分类
11.
22.内储单为寄存器是CPU部的存元,根据用途可分通用寄存器、临时储数专针用于存据和指令,速用寄存器、段寄存器、指标度快,容量小寄存器和志寄存器重要性示例
33.
44.数寄存器是CPU处理据的核心,AX、BX、CX、DX是通用寄存执储数影响程序行效率,需要合理器,可用于存据、地址或分配和使用指令指令集指令集指令格式指令类型汇编语础码数指令集是言的基,定义了处理器可每个指令都具有特定的格式,包括操作和指令集通常包含各种类型的指令,例如据执数码执传术逻辑以行的所有指令指令集中的每个指令都操作操作指示处理器要行的操作,送指令、算运算指令、运算指令、执将数数数转较行一个特定的操作,例如,据从一个而操作指定操作所要处理的据控制移指令、比指令等执术位置移动到另一个位置,或者行算运算内存组织内存地址空间物理内存内存段访问内围计内内将内为CPU可以的存地址范算机中实际安装的存条,由多个存芯存地址空间划分多个段,每个段都有组片成自己的起始地址和大小程序执行过程编译将汇编语译语标执言源程序翻成机器言的目程序,并生成可行文件加载将执载内为执可行文件加到存中,程序行做好准备执行内读执CPU从存中取指令并行,完成程序的功能输出执结将结显盘程序行束后,果输出到示器、硬等设备数据传送指令指令指令
11.MOV
22.LEA将数标将内载标源操作的值复制到目操存地址的值加到目操数数传数计内作中,是最常用的据送作中,用于算存地址指令指令指令
33.PUSH
44.POP将数压栈将栈顶弹标操作入堆,用于保存堆部的元素出到目数传数数数据或递参操作中,用于恢复据或参数算术运算指令加法指令减法指令乘法指令除法指令将数将数将数将数ADD指令用于两个操作SUB指令用于两个操作MUL指令用于两个操作DIV指令用于两个操作相结储标数结储标数结储标数结储标数相加,果存到目操作相减,果存到目操作相乘,果存到目操作除,果存到目操作中中中中将将将将例如,ADD AX,BX寄存器例如,SUB AX,BX寄存器例如,MUL BX寄存器BX例如,DIV BX寄存器AX中BX中的值加到寄存器AX中,BX中的值从寄存器AX中减中的值乘以寄存器AX中的值,的值除以寄存器BX中的值,将结将结将结将数并果存入AX去,并果存入AX并果存入AX和DX中并商存入AX,余存入DX中逻辑运算指令位运算布尔逻辑逻辑运算结果逻辑执级对数逻辑逻辑逻辑结逻辑数运算指令行位操作,操作的每运算指令基于布尔,处理真假值,运算果由运算符和操作的位值进逻辑一位行运算例如与、或、非运算决定,以真假值表示控制转移指令改变程序执行流程实现分支结构转执选择执码控制移指令可改变程序行流根据条件行不同的代路现转环断径程,实跳、循、条件判,提高程序灵活性和效率等功能提高程序效率过转执码码通跳指令避免重复行代,减少程序代量,提高程序运行效率比较指令比较指令较较数关将结标比指令用于比两个操作的大小系,并果保存到志寄存器中比较结果•标较结则ZF零志,比果相等置位•标结为负则SF符号志,果置位•进标结为数则CF位志,果无符号大于置位•标结为数则OF溢出志,果有符号溢出置位常用比较指令•较数CMP比两个操作•标TEST与操作并设置志位串操作指令字符串移动字符串比较字符串扫描字符串填充MOVSB和MOVSW指令用于CMPSB和CMPSW指令用于比SCASB和SCASW指令用于在STOSB和STOSW指令用于填内将较断将在存中移动字符串,可以两个字符串,可以判两个字符串中查找特定的字符,可充字符串,可以一个字符填一个字符串复制到另一个位置字符串是否相等以找到第一个匹配的字符的位充到字符串的指定位置置中断处理中断处理的定义中断处理过程断执断当执中是程序行流程的改变,通常是由外中处理程序首先会保存前程序的行键盘键标击状态计数栈针部事件触发,比如按、鼠点或,包括程序器、堆指和通用硬件故障寄存器等断暂当执转断中处理程序会停前行的任务,处然后,程序跳到中处理程序的起始地断断执断码理中事件,然后返回到中发生前的程址,行中处理程序的代继续执序位置行断完成中处理后,程序会恢复之前保存的状态断继,并返回到中发生前的程序位置续执行过程调用子程序调用堆栈将执码码读维栈来调执重复行的代段封装成子程序,提高代的可性和可护性使用堆保存用者的地址和局部变量,确保程序行的正确性参数传递返回指令过内传数现数执毕调继续执通寄存器或存递参,实子程序之间的据交互子程序行完后,使用RET指令返回用者的地址,行主程序宏指令代码复用代码简化
11.
22.将码为将杂码宏指令可以一段代定义一个宏,宏指令可以复的代块封装成一个调编写简单码读维并在程序中多次用,避免重复代的宏,提高代的可性和可护码性参数传递编译过程
33.
44.数许调时传编译阶开换应宏指令可以接受参,允在用宏指令在段被展,替成相现码码独码递不同的值,实代的灵活性和通用的代,不会生成立的代段性功能调用BIOSBIOS简介计时载负责检基本输入输出系统BIOS,是算机启动加的第一段程序,初始化硬件、测载硬件设备并加操作系统中断调用断应调BIOS提供了一系列中服务程序,供操作系统或用程序用常用功能键盘标盘常见功能包括输入、鼠控制、磁操作、屏幕输出等功能调用DOS系统调用DOS过断调内通中机制,程序可以用DOS系统提供的功能,例如文件操作、存管理、设备控制等调用约定断将数储使用INT21H中指令,并参存在特定的寄存器中功能代码调码标识每个功能用都有一个唯一的代,用于具体的功能编程实践践检验标习汇编语径过编写对汇编语锻编实是真理的唯一准,也是学言的最佳途通动手程序,可以加深言的理解,炼程能力项目实践1项开将识应场参与真实目发,所学知用于实际景中代码练习2过码练习汇编语语通大量的代,掌握言的法和指令使用实验验证3课验验证识巩习完成本上的实,所学知点,固学效果编践渐进过简单码练习杂项践断编程实是一个循序的程,从的代到复的目实,不提升程能力代码优化技巧代码优化技巧优化目的优化方法优化工具码码码码开代优化是指在不改变程序功代优化主要目的是减少程序常见代优化方法包括优化一些代优化工具可以帮助过调码结内码员识别码能的前提下,通整代占用存、提高程序运行速度算法、减少代冗余、使用合发人自动代中的潜在码数结问题议构、算法等方式,提高程序运和减少程序代量适的据构等,并提供优化建行效率调试技巧单步执行断点调试执码执断断暂逐步行代,查看每条指令设置点,程序运行到点处结问题检状态行果,方便定位停,方便查变量值和程序跟踪调试日志输出执数调码语记跟踪程序行流程,查看函在代中加入日志输出句,栈录过用和变量值变化程序运行程信息,方便排查错误实验简单程序设计1实验目的1汇编语语简单编写熟悉言的基本法和指令,掌握程序的方法,独简单汇编计并能立完成的程序设实验内容2编写简单现数一个的程序,实两个整的加减乘除运算,并输出结果实验步骤3验内编写汇编码数
1.根据实容程序代,包括据定义、程序段等;汇编编译将码编译执执
2.使用器代成可行文件;
3.运行可行文观结码件,察程序运行果并分析代实验数据处理程序2数据输入1计码设输入部分代数据处理2进根据要求行处理数据输出3计码设输出部分代验将习汇编语编写来数数数数过在本实中,学生学如何使用言程序处理据程序需要包含据输入、据处理和据输出三个部分通完成本实验将汇编语数为续验础,学生掌握言中据处理的基本方法,后实奠定基实验子程序设计3汇编计组过将为独编写调试维子程序是程序设的重要成部分,通程序分解若干个立的功能模块,可以提高程序的模块化程度,方便程序的、和护子程序定义1数传使用PROC指令定义子程序,并设置参递方式子程序调用2调将数传给使用CALL指令用子程序,并参递子程序子程序返回3执毕调将结传调子程序行完后,使用RET指令返回用程序,并果递回用程序堆栈4调过栈进执状态子程序用和返回程使用堆行管理,保存程序行计栈数传传验过编写简单习调过栈子程序设需要理解堆的作用和使用方法,以及参递方式和返回值的递方式本实通的子程序,学子程序定义、用和返回的程,并掌握堆的使用实验中断处理程序4中断概念1断计键盘盘读写中是算机系统中处理异步事件的一种机制,例如输入或磁中断处理流程2断时暂当执转执断中发生,CPU会停前程序的行,而行中处理程序•状态保存CPU•执断行中处理程序•状态恢复CPU•断返回中发生前的程序实验内容3编写断断执过一个程序,模拟一个中事件的发生,并演示中处理程序的行程实验和功能调用5BIOS DOSBIOS功能调用层显键盘过调BIOS基本输入输出系统提供了底硬件操作功能,例如屏幕示、输入等通用BIOS断访问这中,可以些功能DOS功能调用盘级录过调DOS磁操作系统提供了一些更高的功能,例如文件操作、目操作等可以通用DOS断访问这中,些功能实验内容编写汇编别调现简单显读键盘创程序,分用BIOS和DOS功能,实的操作,例如示字符、取输入、建文件等实验要求调关数编写调理解BIOS和DOS的功能用机制,掌握相指令和参的使用,完整的功能用程序实验复合程序设计6模块化1将为独程序划分多个立模块接口定义2数传明确定义模块之间据递方式程序集成3将为模块整合完整的程序测试调试4确保每个模块和整体程序运行正确计将组这进测试调试骤过这复合程序设是多个功能模块合在一起,形成一个完整的程序需要行模块划分、接口定义、程序集成、等步通种方式,将杂问题问题码读维可以复分解成多个小,提高代的可性、可护性、可复用性大作业要求内容要求格式要求提交要求计汇编码规释详细将码计档图设一个完整的程序,包含多个模块,程序代要范,注要,并附上设程序代、设文和运行截等材料现计档压缩并实一个具体的功能可以是一个小游文,包括程序的功能描述、模块划分、打包成一个文件,并以“学号_姓名_戏数计码现内,一个据处理工具,或是一个系统工算法设、代实等容大作业”命名具总结与展望汇编语言的重要性未来发展趋势12汇编语计层驱开言是理解算机系统工嵌入式系统、底动发等础习领汇编语作原理的基,是深入学其域仍然需要言编语础他程言的必备基学习建议3续练习断积验汇编语持,不累经,逐步掌握言的精髓。
个人认证
优秀文档
获得点赞 0