| 网站首页 | 业界新闻 | 群组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 820 人关注过本帖
标题:一道汇编题目,困扰好几天了求解答
只看楼主 加入收藏
nihaoburen
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2018-5-14
结帖率:75%
  问题点数:0  回复次数:7   
一道汇编题目,困扰好几天了求解答
求解第一个画圈部分和第三个画圈部分
为什么要除以BL?
BL为什么要取51和5,根据是什么?
第二个画圈部分,为什么要OR AL,80H
作用是什么,要是没有这条指令会出现什么状况?哪里错了




附件: 您没有浏览附件的权限,请 登录注册
2018-08-12 19:10
nihaoburen
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2018-5-14
  得分:0 
求助版主啊
2018-08-14 15:30
nihaoburen
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2018-5-14
  得分:0 
求助啊
2018-08-15 13:56
wmf2014
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:166
帖 子:1756
专家分:9854
注 册:2014-12-6
  得分:0 
似乎代码还没有提供全。如果能给出tempdata和segdata处的数据就好分析了。
从接线图可知:B8255是8段数码管,C8255高4位是用于选择显示的数据位的,低电平有效。
div 51的目的是要得到余数暂存到ah中,xlat指令才是取数据显示的,这和寄存器si(tempdata)、bx(segdata)的数据有关。
div 5被除数就是div 51后的余数,由于没有后续代码,也看不出做什么。
or al,80的作用就是显示出该位的小数点。

能编个毛线衣吗?
2018-08-17 17:22
nihaoburen
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2018-5-14
  得分:0 
附件: 您没有浏览附件的权限,请 登录注册
2018-08-18 12:38
nihaoburen
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2018-5-14
  得分:0 
附件: 您没有浏览附件的权限,请 登录注册
2018-08-18 12:38
nihaoburen
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2018-5-14
  得分:0 
回复 4楼 wmf2014
看楼上,图片补充完全了
OR AL 80H是显示小数点?不对吧,首位之后显示小数点?
2018-08-18 12:39
wmf2014
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:166
帖 子:1756
专家分:9854
注 册:2014-12-6
  得分:0 
从所有资料分析“or al,80”的确是小数点,首位是百位数(8255PC高四位为1101,低位有效),次位是十位数(8255PC高四位为1011),最后一位单位符号类似“ц”(8255PC高四位为0111,数码显示段为00011100,各位依次对应数码显示段为DP、G、F、E、D、C、B、A)。
tempdata为数模转换后的电压值,模拟显示了几个数据如下:
tempdata值     数码显示
FFH(255)        5.0ц
80H(128)        2.5ц
40H(64)         1.2ц
18H(24)         0.4ц
32H(50)         0.Aц
大概就是数模转换一个0至5伏的电压值并显示出来吧。

能编个毛线衣吗?
2018-08-20 16:57







关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.047389 second(s), 9 queries.
Copyright©2004-2019, BCCN.NET, All Rights Reserved