CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  其他开发语言 >  汇编语言

几个端口和中断的问题

楼主demephy(襄王有梦)2005-11-21 15:18:34 在 其他开发语言 / 汇编语言 提问

问题一:  
  为什么用debug读端口命令时对很多端口读得的结果都是DD?如  
  -i70  
  DD  
  -i80  
  DD  
  -i90  
  DD  
  -  
  而即使用写端口命令改变了端口的值,再读却还是DD?  
  -o70   0  
  -i70  
  DD  
  -  
  请高手指教这是为什么?难道不能对这些端口写吗?  
   
  问题二:  
  访问8位端口时用al传送数据,访问16位端口时用ax传送数据,  
  但是如果对于8位端口,用ax传送数据,或16位端口用al   传送数据,MASM编译器也能编译通过,  
  0B64:001D   E460                     IN             AL,60  
  0B64:001F   E560                     IN             AX,60  
  0B64:0021   E660                     OUT           60,AL  
  0B64:0023   E760                     OUT           60,AX  
  但是实际执行时会产生什么效果?  
  如以下指令分别会产生什么效果?  
  IN   AX,   B_PORT  
  IN   AL,   W_PORT  
  OUT   B_PORT,   AX  
  OUT   W_PORT   AL  
  请高手明示。  
   
  问题三:  
  当中断源向cpu发中断请求信号时,它置位保存着该状态直到该中断得到响应。  
  请问这个中断请求状态保存直到中断得到响应是指中断请求状态一直保存到中断处理程序的第一条指令开始执行之前还是保存到中断处理程序的最后一条返回语句执行之后,才把中断请求状态清除?  
   
  问题四:  
  INTO指令怎么用?和INT   4除了指令码(INTO:CE   INT   4:CD04)不一样外还有什么区别?  
   
  问题点数:20、回复次数:4Top

1 楼demephy(襄王有梦)回复于 2005-11-21 18:34:09 得分 0

各位大哥麻烦给回答一下好吗?Top

2 楼demephy(襄王有梦)回复于 2005-11-21 19:13:54 得分 0

??????????????????Top

3 楼demephy(襄王有梦)回复于 2005-11-21 20:37:18 得分 0

mydo(坎道斯|Kinds)大哥帮忙给解释下,谢谢!Top

4 楼DoItFreely(Freely)回复于 2005-11-28 12:27:08 得分 20

一,由硬件决定,有些端口不连设备总是0xff,有些不是;如果该端口只读,写操作并不能改变它的值  
  二,即使你使用16位数据发送在数据总线了,但是端口只有8位,这不算错误,因为高8位没有数据线的内容不被端口接受   -   它只有8根线   -   丢了也没关系;至于是否有副作用,还是要看硬件是怎么设计的,如果接下来的地址中有8位可写端口,也许有副作用  
  三,CPU执行开始中断程序就是响应中断,此时请求中断的信号已经撤消了   -   在执行中断例程的第一条指针之前。考虑下面的情况,CPU叫硬盘控制器去读一块数据,当读到数据时因为正在运行OS内核某段程序,中断已经关闭(禁止中断),CPU此时不会响应它,知道再次允许中断时,CPU才会给pic一个ACK,然后查找并执行isr。硬件手册上有图,irq和ack各有一条线  
  四,用途不同。int0被硬性设计成单步中断,即执行一条指令,然后暂停。在不允许中断的时候,即flags的……为0时,该指令被忽略,不会暂停执行。int   4,不清楚,请查手册。Top

相关问题

  • 有几个端口打开?
  • 如何控制8259使RS232的中断禁止,对哪个端口写什么?
  • 端口地址 及 中断号
  • 关于中断和端口的资料
  • pop2,pop3,smtp用哪个几个端口啊?
  • 请教几个端口的作用!!
  • 关于几个端口的作用
  • 几个程序可以共用同一端口通信吗?(网络,端口)
  • 谁知道通讯端口的上限值就是有多少个端口,那几个端口是系统占用的?档案分-5
  • 我试了好几个端口都不行,在CSocket中...

关键词

  • 端口
  • 中断
  • 指令
  • 执行
  • 数据
  • 硬件
  • cpu
  • b64
  • 请求
  • 响应

得分解答快速导航

  • 帖主:demephy
  • DoItFreely

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo