微机原理及应用 第3章_1 微型计算机指令系统学习资料.ppt

微机原理及应用 第3章_1 微型计算机指令系统学习资料.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

*先修改堆栈指针,然后把一个字从源操作数压入堆栈顶部。把现行SP所指向堆栈顶部的一个字弹出到目的操作数,再进行修改堆栈指针的操作。*执行PUSH指令,(SP)-2?(SP), 低字节放在低地址,高字节放在高地址。 随着推入堆栈内容增加,堆栈就扩展,SP的值减少, 但SP总是指向栈顶,堆栈工作原则后进先出。寄存器(通用寄存器,地址指针,变址寄存器),段寄存器(CS除外,PUSHCS合法,POPCS非法),存储器。实现:立即数?通用寄存器/存储器通用寄存器?通用寄存器/存储器通用寄存器/存储器?段寄存器注:立即数不能作目的操作数MOV01H,CH(×)通用寄存器AX、BX、CX、DXBP、SP、DI、SI立即数存储器段寄存器DS、SS、CS、ES禁忌:存储器?存储器立即数?段寄存器段寄存器?段寄存器例:CPU内部寄存器之间的数据的任意传送(除了段寄存器CS和指令指针IP以外,注意:段寄存器之间不能传送,且段寄存器CS不能做目的操作数)。 MOVDL,CH ;8位寄存器?8位寄存器 MOVAX,DX ;16位寄存器?16位寄存器 MOVSI,BP MOVDS,BX ;通用寄存器?段寄存器 MOVAX,CS ;段寄存器?通用寄存器例:立即数传送至CPU内部通用寄存器组(AX、BX、CX、DX、BP、SP、SI、DI),用于给寄存器赋初值。注意:不能直接给段寄存器赋值 MOVCL,04H ;立即数?8位寄存器 MOVAX,03FFH ;立即数?16位寄存器MOVWORDPTR[SI],057BH;立即数?存储器MOVBYTEPTRMEM,5;立即数?存储器思考:为什么加WORDPTR,BYTEPTR?例:CPU内部寄存器(除CS和IP外)与存储器(所有寻址方式)之间数据传送,可以实现一字节或一个字的传送。注意:两存储单元之间不能直接传送 MOVMEM,AX ;累加器?存储器,直接寻址 MOVMEM,DS ;段寄存器?存储器,直接寻址 MOVDISP[BX],CX ;寄存器?存储器,相对寻址 MOVAX,DISP[SI] ;存储器?累加器,相对寻址 MOVDS,MEM ;存储器?段寄存器,直接寻址 MOVCX,DISP[BX][SI];存储器?寄存器,基址变址不能用一条MOV指令实现以下传送:①两存储单元间不能直接传送例:MOVMEM2,MEM1(×)MOVAX,MEM1MOVMEM2,AX②立即数不能直接送段寄存器例:MOVDS,2000H(×)MOVAX,2000HMOVDS,AXMOV指令小结:③段寄存器之间不能直接传送例:MOVES,DS(×) MOVAX,DSMOVES,AX④注意CS和IP的使用CS和IP不能作为目标操作数,但可以作为源操作数。例:MOVCS,AX(×)MOVAX,CS MOVIP,AX(×) MOVAX,IP①堆栈的概念按照后进先出(LastInFirstOut简称LIFO)原则组织的一段内存区域,SS中存放段地址,堆栈指针SP总是指向栈顶,存放偏移地址。(2)堆栈操作指令堆栈段SSSP低地址高地址……堆栈示意图存储器栈顶单元堆栈区存放数据时,总是从高地址开始向低地址方向增长。堆栈用途:存放CPU寄存器或存储器中暂时不使用的数据,使用数据时将其弹出;调用子程序,响应中断时都要用到堆栈。调用子程序(或过程)或发生中断时要保护断点的地址(即当前CS和IP的值),子程序或中断返回时再恢复断点。

文档评论(0)

ouyangxiaoxin + 关注
实名认证
内容提供者

一线鞋类设计师,喜欢整理收集文档。

1亿VIP精品文档

相关文档