. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
刷新 | 提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->基础知识
  管理员: assembly   [回复本贴] [收藏本贴] [管理本贴] [关闭窗口]
主题 : :  第1章【基础知识】第8页的1.9数据总线,实在搞不懂,刚学习,请大家帮帮我解答下  [待解决] 回复[ 10次 ]   点击[ 942次 ]  
al20100324
[帖 主]   [ 发表时间:2010-03-28 20:58 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2010-03-24 19:46
8086有16根数据线,可一次传送16位数据,所以可一次传送数据89D8H;而8088只有8根数据线,一次只能传8位,所以向内存写入数据89D8H时需要进行两次数据传送。

这一句实在不解

为什么【8086有16根数据线,可一次传送数据89D8H?又为什么8088只有8根数据线,向内存写入数据89D8H时需要进行两次数据传送???】

请大家帮我解答下,谢谢了,刚接触汇编,很有热情,在线等
lingoho
[第1楼]   [ 回复时间:2010-03-28 21:52 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2008-05-21 18:30
数据组成是16位.高8位,低8位.总16位,如果是16根数据线传送,当然只要1次就可读写完成,8位数据线的话,它得先读写低8位,再读写高8位数据,这样就得进行2次传送了.8086 16根数据线,8088 8根数据线,这个处理器不同性质差异.
al20100324
[第2楼]   [ 回复时间:2010-03-28 21:55 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2010-03-24 19:46
谢谢,学习了,这些都不了解
2xhq
[第3楼]   [ 回复时间:2010-04-26 17:06 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2010-04-26 15:47
差点就过了,学习了!
wangxinjian76
[第4楼]   [ 回复时间:2010-04-29 23:20 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2010-04-25 12:19
我是这样理解的,比较笨,不好意思:89dH是十六进制,转到二进制后为1000100111011000,共十六位,而8088只有8 根线,现在有十六位数据,所以要进行两次传送,先传送11011000,再传送10001001,也就是先D8再89,先低后高
qinghao1
[第5楼]   [ 回复时间:2010-05-24 12:22 ]   [引用]   [回复]   [ top ] 
荣誉值:6
信誉值:0
注册日期:2008-05-26 12:14
为什么【8086有16根数据线,可一次传送数据89D8H?又为什么8088只有8根数据线,向内存写入数据89D8H时需要进行两次数据传送???】 
------------------
回复:
8086引脚功能说明
http://www.asmedu.net/blog/user/bigimg.jsp?neighborId=11024&pic=post_1274593543421.png
8088引脚功能说明
http://www.asmedu.net/blog/user/bigimg.jsp?neighborId=11024&pic=post_1274672644468.png
从图中可以看出8088的数据端口只有8个(AD0-AD7,之所以AD是因为地址A和数据D会复用这个端口)
而8086有16个(AD0-AD15). 
(另外图中还可以看出8086地址端口有20个AD0-AD15,A16-A19, 8088和8086一样)


关于引脚
想像每个引脚是一个开关, 从这些引脚中连接出去的导线, 在线的另外一头连接的灯泡(忽略回路细节)
8086和8088都灯泡的亮灭来表示信号(信息,数据)
8086有16个灯泡(设计决定),表示16个亮灭状态一次操作就完成了.
而8088只有8个灯泡,表示16个亮灭状态,一次操作完不成,两次可以.
如果存在一块CPU只有一个引脚, 也就相当于只有一个开关和一个灯泡
要表示16个亮灭状态,要16次才能完成.

最后
【8086有16根数据线】  这是设计决定的,一旦你用8086编程你就得遵守这个设计, 不管你是输入输出数据都只能用这些个引脚.
同样地
【8088只有8根数据线】 这也是设计决定的. 制造的时候也就只造了8个用于数据传送的引脚. 一旦你要用8088,你的数据的输入输出也都只能用这设计好的8个引脚.

(希望我说清楚了,因为我的理解也就这个水平,更多的要高手来指点)
bruce888
[第6楼]   [ 回复时间:2010-06-03 15:16 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2010-06-02 14:32
很好,说的很明白了
fhls
[第7楼]   [ 回复时间:2010-06-04 15:17 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2010-06-03 15:56
我猜一下啊,一根数据线表示一位二进制数比如 10101010 这个8位2进制数,8位那么对应8跟数据线一根表示一位数,第一根数据线通电表示1,第二根数据线不通电表示0,以此类推。那么16根数据线当然可以一次传送1个16位数了,一根数据线可以传送一位二进制数嘛。那么8跟数据线要传送1个16位数,需要先传前8位,再传后8位(具体先传那个不清楚)
likelike
[第8楼]   [ 回复时间:2010-11-11 16:03 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2010-11-09 16:36
感觉你是概念不清,数据的传送是由二进制传入寄存器,这里的是"位"指的是二进制中的位,八个数据总线就可以传八位二进制的数。
lihuan8460
[第9楼]   [ 回复时间:2010-12-03 21:15 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2010-12-03 12:38
goodxiaowan
[第10楼]   [ 回复时间:2010-12-09 13:28 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2010-05-23 12:24
你这个问提属于计算机组成原理的一个小问题!
我们意识上的0、1在计算机用电压的高低来表示,至于那个标准电压是多少,不同类型的电脑有所不同;这个标准电压,我也忘了!
一根线很显然只能传送一次电压脉冲,也就是我我们意识上的0或1;89d8H对应为1000 1001 1101 1000。
需要登录后才能回帖 -->> 请单击此处登录
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved