有趣的一道题:将一组零乱数组,重新按序排列
描述如下:
功能:要求将一组零乱数组,重新按序排列并放回原位。
编程思路:将第一个数据与第二个数据比较,大于则调换位置,小于则不动,然后将调换后的第二个数据与第三个数据比较,大于则调换,小于则不动,依此类推直到最后一个数为一轮循环,经过9轮循环则可排
序完成跳出。,
assume cs:code, ds:data
data segment
a dw 3,2,5,1,6,4,8,10,9,7 ;包含10个元素的零乱数组
data ends
code segment
start:mov cx,9 ...


- [peterhui] 感觉仅学到了点皮毛而已,虽然这本书要学完了,但这才刚刚起步。打算将全书重新温习一遍后开始学C。革命才 08/15 10:02
- [younggay] 马上就学完了。有啥感想不?呵呵 08/09 15:55
- [tomato] 不错! 08/08 14:19
- [lwbfq] 博主只是实现了输入的功能,而书上的要求却是要把这个功能作为一个功能调用加以实现,可以指定输入字符显示 08/07 16:14
- [peterhui] 大侠们!发表点意见啊! 08/07 10:06
- [duckgaga] 不要急,呵呵,尤其是第16章,往深了去很有内涵的.我当时就花了2个星期的时间去学(虽然并不是连续的, 07/14 16:53
- [peterhui] 呵!说错了,应该是奥运会前学完这本书。好多网友都是一星期两章,我只能一个月两章了,边工作边抽空学习, 07/14 14:26
- [游客] 奥运会? 博主很忙啊 加油 07/14 11:55
- [游客] 很好。这样的学习方式挺不错。 顶!!! 07/14 11:49
- [peterhui] 多谢tomato的指点,谢谢! 程序下次再改,我得加紧学完16章了,计划奥运会前学完,担心有问题: 07/13 08:42
[2008-07-07 15:49]
有趣的一道题:将一组零乱数组,重新按序排列。(可能还有更好算法,请大家提出)
阅读全文 |
评论次数(3) |
浏览次数(1376) |
所属类型(默认类型)
[2008-07-06 17:26]
在实验14的基础上改进,将实时时间以跑码灯形式显示
实验14:访问CMOS RAM
描述如下:
功能:将以“年/月/日 时:分:秒”的格式,显示当前的日期,时间,并以跑码灯形式显示。
参数:es:si指向显存地址 ;ds:di指向数据段日期时间端口
编程思路:(此程序比原书上要求有稍作修改:可以实时扫描端口将时间不断更新)
因CMOS RAM年份及日期共6个单元,将此六个单元放入数据段,循环一次端口di+1,直到循环完.
assume cs:code
data segment
db 9,8,7,4,2,0
db '/','/',' ',':',':...
描述如下:
功能:将以“年/月/日 时:分:秒”的格式,显示当前的日期,时间,并以跑码灯形式显示。
参数:es:si指向显存地址 ;ds:di指向数据段日期时间端口
编程思路:(此程序比原书上要求有稍作修改:可以实时扫描端口将时间不断更新)
因CMOS RAM年份及日期共6个单元,将此六个单元放入数据段,循环一次端口di+1,直到循环完.
assume cs:code
data segment
db 9,8,7,4,2,0
db '/','/',' ',':',':...
阅读全文 |
评论次数(2) |
浏览次数(1136) |
所属类型(默认类型)
[2008-06-20 20:48] 内中断的一个问题,请帮忙释疑
书中说:“当CPU内部有下面四种情况发生时,将产生相应的中断信息“:
1. 除法错误
2. 单步执行
3. 执行INT0指令
4. 执行INT指令
我的问题是,如果我有一个新的中断信息 "5.执行...指令"需要产生新的中断信息。我将中断程序的入口地址写在0:0010处,那CPU就知道会提取5号中断类型码吗?我的意思是CPU是怎么知道在什么情况下提取相应的中断类型码的...
1. 除法错误
2. 单步执行
3. 执行INT0指令
4. 执行INT指令
我的问题是,如果我有一个新的中断信息 "5.执行...指令"需要产生新的中断信息。我将中断程序的入口地址写在0:0010处,那CPU就知道会提取5号中断类型码吗?我的意思是CPU是怎么知道在什么情况下提取相应的中断类型码的...
阅读全文 |
评论次数(3) |
浏览次数(674) |
所属类型(默认类型)
页码数(1):
1