- 1、本文档共67页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微机原理重点教学文稿.ppt
串操作指令 MOVSB、CMPSB、SCASB、LOADSB、STOSB MOVSW、CMPSW、SCASW、LODSW、STOSW (A)、串操作的特点 1)SI寻址源操作数,段地址在DS,DI寻址目的操作数,段地址在ES; 2)每次操作后,SI、DI自动修改: DF=0,SI和DI加1或(+2),CLD清0 DF DF=1,SI、DI减一或减二。 STD置1 DF 3)若源字串和目的字串在同一段中,则把DS和ES设成相同数字。 4) 通过重复前缀实现串操作 (B)重复前缀: REP REPZ/REPE REPNZ/REPNE 控制转移指令 JMP、JZ/JNZ、JC/JNC、JA/JB、 JG/JL、 JA/JNBE、JB/JNAE、 LOOP、LOOPZ/LOOPNZ CALL/RET INT n/IRET 处理器控制指令 标志操作指令 CLC :CF=0 ;清进位标志 CMC :对CF求反 ;对进位取反 STC : CF=1 ;置一进位标志 CLD :DF=0 ;清方向标志 STD : DF=1 ;置一方向标志 CL I : I F=0 ;清中断标志 ST I : I F=1 ;置一中断标志 暂停指令HLT 第4章 汇编语言程序设计 熟悉常见程序设计问题 字符串传送、比较等操作 求最小最大值 数据求和 统计字符个数 排序 查表(查代码、特定值等) 伪指令 OFFSET/SEG/ORG DB/DW/DD PTR SEGMENT/ENDS/END/ASSUME FAR/NEAR 例: ORG 1000H BUF DB 12H,56H,78H N EQU $-BUF MOV BX,OFFSET BUF MOV AL,BUF+1 MOV DX,WORD PTR [BX] 例1:将DAT1开始的10个字节传送到DAT2开始单元。 MOV SI,OFFSET DAT1 ;SI指向源串地址 MOV DI,OFFSET DAT2 ;DI指向源串地址 MOV CX,10 ;置计数器 CLD ;清方向标志 REP MOVSB ;将源地址的10个字传送到目的地址单元 例2. 从地址为BLOCK开始单元,存放100个字节的字符串,找出第一个字符 $ (ASCII码24H),将$的第一个地址存入BX中,否则将BX清零. MOV DI, 1000H ;送目标串首地址 MOV CX, 256 CLD ;清方向标志 MOV AL, ‘$’ REPNZ SCANB ;AL - [DI] JZ FOUND ;找到$,转 MOV BX,0 JMP STOP FOUND: DEC DI ;退回到$所在地址 MOV BX,DI ;$所在地址送BX STOP: HLT 例3: 求和Y=A1 + A2 + …. + A100 Ai是字变量。 设CX: 计数器,循环次数 BX: 数据指针DX, AX: 存和 XOR AX, AX ;清AX MOV BX, OFFSET TABLE MOV CX,
文档评论(0)