关于in指令一次读取2个字节的疑惑

发布于 2022-09-04 08:39:04 字数 266 浏览 14 评论 0

最近在看《操作系统真相还原》, 书里说到:

举个例子, 比如in指令可以读取16位端口数据, 即一次读取2字节, 假设端口0x234是16位端口
in ax, 0x234 相当于
in al, 0x234
in ah, 0x235

我的疑惑是, 0x234本身就是16位端口了, 为什么in ah要从0x235读取呢? 而不是继续读0x234端口呢?

我自己理解的不清楚,还希望大神解惑!!! 感激不尽?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

因为看清所以看轻 2022-09-11 08:39:04

ah、al 分别是 ax的高低8位

0x234 类似 c 里的指针,只表示起始地址,结束地址根据不同指令而定。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文