2012ZGZYY 发表于 2015-1-7 00:17:30

新手问一道关于8255并口的题


关于上面那段程序有几个问题:
1.DS:DATA这儿,DATA是段名,没有其他的语句来定义DATA,这样也可以吗?那执行MOV AX,DATA之后AX中的值是什么呢?MOV AX,DATAMOV DS,AX这两句的作用是什么呢?能不能不要这两句呢?
2.这段程序的LOOP1为什么没有相关的控制语句啊,是有错么?您看看我的分析对不对:在TEST AL,01H之后,如果按键按下,则跳到LOOP1执行,否则继续执行MOV AL,00HOUT 90H,AL,即写A口为0000B。现在假设检测到没有按下按键,那么执行完“OUT 90H,AL”这条指令后,还会继续执行LOOP1吗。(就这里我有疑问,按理说到这里程序应该会继续执行LOOP1啊,那显然就不对啊。)是程序有问题还是我的想法有问题??
3.这段程序的LOOP1指令没有实现循环啊,整段程序执行一遍就结束了,怎么实现题目要求的“循环检测按键是否按下”呢?是程序有错吗?
不知道我的问题阐述清楚没有,劳好心人解答一下。不胜感激。

2012ZGZYY 发表于 2015-1-7 00:18:58

顶啊

2012ZGZYY 发表于 2015-1-7 00:19:33

马上要考试了,求解答啊。

lqjstc 发表于 2015-1-7 12:26:04

坐等大神。

2012ZGZYY 发表于 2015-1-9 17:23:29

大神在哪儿啊??
页: [1]
查看完整版本: 新手问一道关于8255并口的题