《计算机接口技术及应用》课件-5.11 数据传送指令之输入输出指令_第1页
《计算机接口技术及应用》课件-5.11 数据传送指令之输入输出指令_第2页
《计算机接口技术及应用》课件-5.11 数据传送指令之输入输出指令_第3页
《计算机接口技术及应用》课件-5.11 数据传送指令之输入输出指令_第4页
《计算机接口技术及应用》课件-5.11 数据传送指令之输入输出指令_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

微机原理及应用第五章8086指令系统第十一讲数据传送指令之输入输出指令下面我们来学习输入输出指令数据传送指令之输入输出指令输入输出指令是CPU跟io端口进行数据传送在计算机中,可能有很多个IO接口在每个IO接口中,又会有多个IO端口,它们用于存储数据的寄存器可以直接被CPU访问CPU就是通过输入输出指令与IO端口之间传送信息CPU输入输出指令IO端口数据传送输入输出指令是CPU跟io端口进行数据传送,在计算机中,可能有很多个IO接口,在每个IO接口中,又会有多个IO端口,输入输出指令IO接口IO端口它们用于存储数据的寄存器可以直接被CPU访问,CPU就是通过输入输出指令与IO端口之间传送信息输入输出指令IO接口IO端口寄存器可以直接被CPU访问CPU通过输入输出指令与IO端口传送信息将输出数据存到AL或AX中输入输出指令有一些使用规则,首先,只能用累加器AL或者AX来传输信息,也就是说将你想要输出给端口的数据事先存到AL或AX中,才能输出出去,而从端口中读入的数据也只能读入到Al或ax中,其他寄存器不能进行跟端口进行数据传送使用规则只能用累加器AL或AX来传输信息将读入数据读到AL或AX中另外,输入输出指令支持两种寻址方式,一种是直接寻址,将立即数写入到指令中,作为端口的地址,这种寻址方式支持的端口号是00~ffh,如果端口号超过了这个范围,输入输出指令端口号:00H~FFH直接寻址方式(立即数)还可以用寄存器间接寻址方式,寄存器间接寻址就是用dx这个寄存器存放端口号,它支持的端口号是0000h~ffffh,输入输出指令端口号:00H~FFH直接寻址方式(立即数)端口号:0000H~FFFFH寄存器间接寻址方式(DX)使用寄存器间接寻址的输入输出指令,事先要把端口号传输到dx中,在使用dx来进行寻址用寄存器间接寻址事先把端口号传输到dx中使用dx进行寻址输入输出指令下面我们来看一下输入指令,输入指令的操作码是in,它的功能是将端口的内容读入到AL或ax中输入指令将端口内容读入到AL或AX中操作码:IN它有两个操作数,一个是目的操作数,就是al或ax,另外一个原操作数就是端口号,可以支持直接寻址的方式,也可以支持寄存器寻址的方式将端口内容读入到AL或AX中操作码:INAL或AX目的操作数端口号原操作数输入指令直接寻址寄存器寻址我们来举两个例子,首先看直接寻址方式,比如INAL,80h,这里80h是端口号,这条指令的含义是将80h端口里的内容读入到al中直接寻址方式INAL,80h端口号将80H端口内容读入到AL中再来看寄存器寻址的方式,如果端口号是3b0h,它大于FFH,因此不能用直接寻址方式,那么可以先将3b0h传送到DX中,然后再用DX作为源操作数,进行寄存器寻址,所以,共有两条指令寄存器寻址方式MOVDX,3B0H大于FFH将3B0H传送到DX中,再用DX作为源操作数进行寄存器寻址第一条,MovDX,3b0h是将3b0h这个端口号传送到dx中寄存器寻址方式MOVDX,3B0H传送到DX中第二条,INAL,DX是从DX指向的端口中读入数据到al寄存器寻址方式MOVDX,3B0HINAL,DX从DX指向的端口中读入数据到AL再来看一下输出指令,输出指令的操作码是out,它的功能是将累加器中的内容输出到端口号的寄存器中输出指令将累加器中的内容输出到端口号的寄存器中操作码:OUT输出指令同样有两个操作数,它的目的操作数是端口号或者是dx,它的原操作数是ax或al输出指令将累加器中的内容输出到端口号的寄存器中操作码:OUT端口号或DX目的操作数AX或AL原操作数举例说明,如果用直接寻址方式的话,端口号必须是00h~ffh的,比如指令:out68h,ax,这条指令的含义是将ax的内容传送到68h这个端口号里,这里请大家注意,68h是个立即数,按照我们之前的要求,立即数是不是不能作为目的操作数使用呀?其实,这里68h表示的是端口号,而不是68h这个数字,所以它的含义是不一样的,在这里可以使用直接寻址方式端口号:00H~FFHOUT68H,AX将AX的内容传送到68H端口号里立即数端口号再来看下面这条指令端口号0fffh大于ffh,因此不能用直接寻址的方式写输出指令OUTPORT,累加器

;PORT:0~255OUTDX,累加器;DX表示的端口范围达216OUT68H,AX;104号端口←[AX]

MOVDX,0FFFH;端口号存入DXOUTDX,AL;[[DX]]←[AL]MOVDX,0FFFH大于FFH只能先将0fffh传送到dx中再用out指令将al的内容传送到dx指向端口号的寄存器中OUTPORT,累加器

;PORT:0~255OUTDX,累加器;DX表示的端口范围达216OUT68H,AX;104号端口←[AX]

MOV

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论