查看: 41|回复: 0

汇编语言-端口(port)

[复制链接]

4

主题

1

回帖

0

积分

热心网友

金币
1
阅读权限
220
精华
0
威望
0
贡献
0
在线时间
0 小时
注册时间
2012-1-2
发表于 2021-1-14 01:16:00 | 显示全部楼层 |阅读模式

汇编语言-端口(port)

相当于计算机和硬件还有网络的传输交流的一个通道

硬件端口

CPU通过接口寄存器或特定电路与外设进行数据传送,这些寄存器或特定电路称之为端口。

其中硬件领域的端口又称接口,如:并行端口、串行端口等。

网络端口

在网络奇数中,端口(Port)有好几种意思。集线器、交换机、路由器的端口指的是连接其他网络设备的接口,如Serial端口。我们 这里所指的端口不是指物理意义上的端口,而是特指TCP/IP中的端口,是逻辑意义上的端口。

软件端口

缓冲区

CPU可以直接读写的三个数据:

1.cpu内部的寄存器

2.内存单元

3.端口

端口的读写

在访问端口的时候,CPU通过端口地址来定位端口,因为端口所在的芯片和CPU通过总线相连。所以端口地址和内存地址一样,通过地址总线传送。

在PC中CPU最多可以定位64KB个不同端口,0~65535

对于端口的读写不能用mov、push、pop等内存读写指令,端口指令只有in和out,分别是用来读数据和写数据

访问内存

mov ax,ds:[8]

1 CPU通过地址线将地址信息8发出

2 CPU通过控制线发出内存读命令

3 存储器将8号单元中的数据通过数据线送入CPU

访问端口

in al,60h

从60号端口读入一个字节给al

操作流程:

  1. CPU通过地址线将地址信息60h发出

  2. CPU通过控制线发出端口°命令,选择端口所在芯片,通知它要读数据

  3. 端口所在芯片将60h端口中的数据通过数据线送入CPU

在in和out指令中只能用al或ax这样的8位16位寄存器

 



来源:https://www.cnblogs.com/Sna1lGo/p/14275243.html
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部