已阅读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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 液体活检专家共识
- 交叉设计在生物等效性试验中的生物分析方法学验证
- 初中九年级体育教案全集教案
- 二尖瓣反流介入修复技术演进
- 分布式能源系统规划设计论文
- 临床麻醉虚拟仿真技能考核标准研究
- 兰州城市学院开题报告(模板)
- 工商管理硕士毕业论文
- 我是一个懒的不能再懒的人,看那本MLA头疼,MLA论文格式
- 临床路径模拟教学对内科医师病历书写质量的影响
- 衢州市国企招聘考试基础题库
- 2025年武汉市蔡甸区总工会公开招聘工会协理员4人考试笔试模拟试题及答案解析
- 人民武装部办公室人员培训计划
- DL-T5191-2004风力发电场项目建设工程验收规程
- 数据中心机房应急全新预案
- 登高车安全安全操作规程
- 盐酸的理化性质及危险特性表9
- 4M变更管理程序含表格
- 城市设计(共32页)
- T∕CCIAT 0040-2021 建设工程人工材料设备机械数据分类标准及编码规则
- 全球四大管理咨询公司培训讲义打造让战略落地的人力资源系统
评论
0/150
提交评论