《汇编语言》第十四章 端口

本文详细介绍了PC机中的端口概念,包括端口的读写指令in和out,以及CMOS RAM芯片的工作原理。CMOS RAM芯片用于存储系统时间和配置信息,CPU通过70h和71h端口进行读写操作。同时,文章还讲解了逻辑位移指令shl和shr的应用,并展示了如何从CMOS RAM中读取时间信息并将其转换为ASCII码在屏幕上显示。
摘要由CSDN通过智能技术生成

第14章 端口

我们前面讲过,各种存储器和CPU的地址线,数据线,控制线相连。CPU在操控它们的时候,把它们当作内存来对待,把它们都当作内存来对待,把它们总地看做一个由若干存储单元组成的逻辑存储器,这个逻辑存储器我们称其为内存地址空间。

在PC机系统中,和CPU通过总线相连的芯片除各种寄存器外,还有3种芯片:

  1. 各种接口卡(显卡,网卡)上的接口芯片,它们控制接口卡进行工作;
  2. 主板上的芯片接口,CPU通过它们对部分外设进行访问;
  3. 其他芯片,用来存储相关的系统信息,或进行相关的输入输出的处理。

在这些芯片中,都有一组可以由CPU读写的寄存器,这些寄存器,它们在物理上可能处于不同的芯片中,但是它们在以下两点上相同。

  1. 都和CPU的总线相连,当然这种连接是通过它们所在的芯片进行的。
  2. CPU对它们进行读或写的时候都通过控制线向它们所在的芯片发出端口读写命令。

可见,从高CPU的角度,将这些寄存器都当作端口,对它们进行统一编址,从而建立了一个统一的端口地址空间,每一个端口在地址空间中都有一个地址。

CPU可以直接读写以下3个地方的数据:

  1. CPU内部的寄存器;
  2. 内存单元
  3. 端口。

现在,我们讨论对端口的读写。

14.1 端口的读写

在访问端口的时候,CPU通过端口地址来定位端口。因为端口所在的芯片和CPU通过总线相连,所以,端口地址和内存地址一样,通过地址总线来传送。在PC系统中,CPU最大可以低位64KB个不同的端口,则端口地址的范围为 0~65535.

对端口的读写不同用mov,push,pop等内存读写指令。端口的读写指令只有两条,in和out,分别用于从端口读取数据和往端口读写数据。

我们现在看一下CPU执行的内存访问指令和端口访问指令时候,总线上的信息:

1.访问内存:
mov ax,ds:[8] ;执行前(ds)=0

1.CPU通过地址线将地址信息8发出
2.CPU通过控制线发出内存读指令,选取存储器芯片,并通知它,将要从中
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值