已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
汇编重细节点及全揽汇编复习重点及细节全揽(贴近考试望大家有选择的看看)数值回送操作符LENGTN(157页习题4.13)格式为 ,LENGTH ,variable对于变量中使用DUP情况,汇编程序将回送分配给该单元的变量数,而对于其他则送1.(书本140页)TYPE()格式为 ,TYPE expression(书本140页)SIZE(158页习题4.14)格式为,SIZE vailible(书本141页)汇编应回送分配给该变量字节数。但是,此值是LENGTH值与TYPE值得乘积。属性操作符1 PTR(142页)(158页的习题 4.19)格式为,type PTR expression地址计数器 $(134页)(156页习题4.8)例4.17重点看。EQU(133页)(157页习题4.12)expression EQU Expression还有编程大题1.输入从键盘小写字母使其变成大写字母?、 试编写一个汇编语言程序,要求对键盘输入的小写字母用大写字母显示出来。答案: .model small.data mess1 db 13,10,Put error!(a-z),13,10,$ mess2 db Please put (a-z):,$ mess3 db?.stack.codestart:movax,datamovds,axmovdx,offset mess2movah,9hint21hmovsi,offset mess3movcx,0begin:movah,01hint 21hcmpal,20hjeexitcmpal,61hjbms1cmpal,7ahjams1subal,20hmovsi,alincsiinccxjmpbeginms1:movdx,offset mess1movah,9hint21hjmpbeginexit:mov dl,0dhmovah,2hint21hmov dl,0ahmovah,2hint21hmovsi,offset mess3output:movdl,simovah,2hint21hincsiloopoutputmovax,4c00hint 21hendstart 2.统计学生成绩,设有10个学生成绩,试编制程序分别统计低于60分,6069分,7079分,8089分,9099分及100分的人数,并显示。数据段定义DATA SEGMENTSD DB 100,98,91,85,82,77,60,62,55,45 c db 6 dup(0)DATA ENDScode segment CODE cs:code ds:datacode endsstart: mov ax ,data mov ds ,ax lea si,offset sdlop: cmp si,60 jg one inc c1 jp exitone: cmp si,70 jg two inc c2 jp exittwo: cmp si,80 jg three inc c3 jp exitthree: cmp si,90 jg four inc c4 jp exitfour: cmp si,100 jg five inc c5 jp exitfive: inc c6 jp exitexit: inc si jp lop mov dl,c1 mov ah,02h int 21h mov dl,c1 mov ah,02h int 21h mov dl,c2 mov ah,02h int 21h mov dl,c3 mov ah,02h int 21h mov dl,c4 mov ah,02h int 21h mov dl,c5 mov ah,02h int 21h mov dl,c6 mov ah,02h int 21h mov ah,01h int 21hcode ends end start这个程序麻烦些但是容易理解,如果有更好的希望大家填改3.某工厂计算周工资方法是每小时工资率rate乘以工作时间hour,另外每工作满十小时加奖金3元,工资放在wag,请编一条宏指令并展开wages marco rate,hour,wagmov al,hourmov bl,ratemul bl mov cx,axmov bh,0div blmov bl ,3mul bladd cx,axmov wag,cxendmx,y,v,w都是16有符号数4.u=(v-(x*y-100))/w;此程序参照课本67页例3.56即可编出;数据传送指令集MOV功能: 把源操作数送给目的操作数语法: MOV 目的操作数,源操作数格式: MOV r1,r2MOV r,mMOV m,rMOV r,dataXCHG功能: 交换两个操作数的数据语法: XCHG格式: XCHG r1,r2 XCHG m,r XCHG r,mPUSH,POP功能: 把操作数压入或取出堆栈语法: PUSH 操作数 POP 操作数格式: PUSH r PUSH M PUSH data POP r POP mPUSHF,POPF,PUSHA,POPA功能: 堆栈指令群格式: PUSHF POPF PUSHA POPALEA,LDS,LES功能: 取地址至寄存器语法: LEA r,m LDS r,m LES r,mXLAT(XLATB)功能: 查表指令语法: XLAT XLAT m算术运算指令ADD,ADC功能: 加法指令语法: ADD OP1,OP2 ADC OP1,OP2格式: ADD r1,r2 ADD r,m ADD m,r ADD r,data影响标志: C,P,A,Z,S,OSUB,SBB功能:减法指令语法: SUB OP1,OP2 SBB OP1,OP2格式: SUB r1,r2 SUB r,m SUB m,r SUB r,data SUB m,data影响标志: C,P,A,Z,S,OINC,DEC功能: 把OP的值加一或减一语法: INC OP DEC OP格式: INC r/m DEC r/m影响标志: P,A,Z,S,ONEG功能: 将OP的符号反相(取二进制补码)语法: NEG OP格式: NEG r/m影响标志: C,P,A,Z,S,OMUL,IMUL功能: 乘法指令语法: MUL OP IMUL OP格式: MUL r/m IMUL r/m影响标志: C,P,A,Z,S,O(仅IMUL会影响S标志)DIV,IDIV功能:除法指令语法: DIV OP IDIV OP格式: DIV r/m IDIV r/mCBW,CWD功能: 有符号数扩展指令语法: CBW CWDAAA,AAS,AAM,AAD功能: 非压BCD码运算调整指令语法: AAA AAS AAM AAD影响标志: A,C(AAA,AAS) S,Z,P(AAM,AAD)DAA,DAS功能: 压缩BCD码调整指令语法: DAA DAS影响标志: C,P,A,Z,S位运算指令集AND,OR,XOR,NOT,TEST功能: 执行BIT与BIT之间的逻辑运算语法: AND r/m,r/m/data OR r/m,r/m/data XOR r/m,r/m/data TEST r/m,r/m/data NOT r/m影响标志: C,O,P,Z,S(其中C与O两个标志会被设为0) NOT指令不影响任何标志位SHR,SHL,SAR,SAL功能: 移位指令语法: SHR r/m,data/CL SHL r/m,data/CL SAR r/m,data/CL SAL r/m,data/CL影响标志: C,P,Z,S,OROR,ROL,RCR,RCL功能: 循环移位指令语法: ROR r/m,data/CL ROL r/m,data/CL RCR r/m,data/CL RCL r/m,data/CL影响标志: C,P,Z,S,O程序流程控制指令集CLC,STC,CMC功能: 设定进位标志语法: CLC STC CMC标志位: CCLD,STD功能: 设定方向标志语法: CLD STD标志位: DCLI,STI功能: 设定中断标志语法: CLI STI标志位: ICMP功能: 比较OP1与OP2的值语法: CMP r/m,r/m/data标志位: C,P,A,Z,OJMP功能: 跳往指定地址执行语法: JMP 地址JXX功能: 当特定条件成立则跳往指定地址执行语法: JXX 地址注:A: ABOVE,当C=0,Z=0时成立B: BELOW,当C=1时成立C: CARRY,当弁时成立 CXZ: CX寄存器的值为0(ZERO)时成立E: EQUAL,当Z=1时成立G: GREATER(大于),当Z=0且S=0时成立L: LESS(小于),当S不为零时成立N: NOT(相反条件),需和其它符号配合使用O: OVERFLOW,O=1时成立P: PARITY,P=1时成立PE: PARITY EVEN,P=1时成立PO: PARITY ODD,P=0时成立S: SIGN,S=1时成立Z: ZERO,Z=1时成立LOOP功能: 循环指令集语法: LOOP 地址LOOPE(Z)地址 LOOPNE(Z) 地址标志位: 无CALL,RET功能: 子程序调用,返回指令语法: CALL 地址 RET RET n标志位: 无INT,IRET功能: 中断调用及返回指令语法: INT n IRET标志位: 在执行INT时,CPU会自动将标志寄存器的值入栈,在执行IRET时则会将堆栈中的标志值弹回寄存器字符串操作指令集MOVSB,MOVSW,MOVSD功能: 字符串传送指令语法: MOVSB MOVSW MOVSD标志位: 无CMPSB,CMPSW,CMPSD功能: 字符串比较指令语法: CMPSB CMPSW CMPSD标志位: C,P,Z,S,OSCASB,SCASW功能: 字符串搜索指令语法: SCASB SCASW标志位: C,P,Z,S,OLODSB,LODSW,STOSB,STOSW功能: 字符串载入或存贮指令语法: LODSB LODSW STOSB STOSW标志位: 无REP,REPE,REPNE功能: 重复前缀指令集语法: REP 指令S REPE 指令S REPNE 指令S标志位: 依指令S而定对于IBM PC机它有它的指令系统,其中包括:数据传送指令、串处理指令、算术指令、控制移动指令、逻辑指令、处理机控制指令。这里将简单介绍其指令类型及指令说明,如有要求给具体的指令格式及应用,请与amay联系,amay加以更新。1)数据传送指令:负责把数据、地址或立即数传送到寄存器或存储单元中。数据传送指令类型 指 令 说 明通用数据传送指令 MOV(传送)、PUSH(进栈)、POP(出栈)、XCHG(交换)累加器专用传送指令 IN(输入指令) 、OUT(输入指令)地址传送指令 LEA(有效地址送寄存器)、LDS(指针送寄存器和DS)、LES(指针送寄存器和ES)标志寄存器传送指令 LAHF(标志送AH)、SAHF(AH送标志寄存器)、PUSHF(标志进栈)、POPF(标志出栈)2)算术指令:用来执行算术运算。算术指令类型 指 令 说 明加法指令 ADD(加法)、ADC(带进位加法)、INC(加1)减法指令 SUB(减法)、SBB(带借位减法)、DEC(减1)、NEG(求补)、CMP(比较)乘法指令 MUL(无符号数乘法)、IMUL(带符号数乘法)除法指令 DIV(无符号数除法)、IDIV(带符号数除法)、CBW(字节转换为字)、CWD(字转换为双字)3)逻辑指令:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- T/CI 401-2024绿色低碳产品评价规范钙钛矿太阳能电池
- 液体活检专家共识
- 交叉设计在生物等效性试验中的生物分析方法学验证
- 初中九年级体育教案全集教案
- 二尖瓣反流介入修复技术演进
- 分布式能源系统规划设计论文
- 临床麻醉虚拟仿真技能考核标准研究
- 兰州城市学院开题报告(模板)
- 工商管理硕士毕业论文
- 我是一个懒的不能再懒的人,看那本MLA头疼,MLA论文格式
- 衢州市国企招聘考试基础题库
- 2025年武汉市蔡甸区总工会公开招聘工会协理员4人考试笔试模拟试题及答案解析
- 售后工程师的沟通技巧
- 重庆市2023-2024学年高一上学期期末联合检测物理试卷(含答案解析)
- 天津市部分区2019-2020学年九年级上学期期末考试语文试题(文本版-含答案)
- JCT908-2013 人造石的标准
- 合伙安装电梯使用协议书范本
- 疯狂动物城之动物小科普课件
- 年终安全生产工作总结报告模板
- GB/T 7764-2017橡胶鉴定红外光谱法
- 石材检测报告2023
评论
0/150
提交评论