无我

让内心永远燃烧着伟大的光明的精神之火!
灵活的思考,严谨的实现
豪迈的气魄、顽强的意志和周全的思考

汇编语言

无论上层语言、框架多么眼花撩乱,汇编永远是程序设计的“易筋经”!
汇编语言学习笔记
     摘要: 汇编语言学习笔记  阅读全文

posted @ 2012-06-13 16:51 Tim 阅读(1729) | 评论 (0)  编辑

王爽《汇编语言第二版》第11章 实验11
     摘要: 编写一个子程序,将包含任意字符,以0结尾的字符串中的小写字母转变成大写字母,描述如下。
名称:letterc
功能:将以0结尾的字符串中的小写字母转变成大写字母
参数:ds:si指向字符串首地址
  阅读全文

posted @ 2012-06-04 14:55 Tim 阅读(758) | 评论 (0)  编辑

王爽《汇编语言第二版》第10章 课程设计1
     摘要: 总结:

1、程序实现中基本都用到了栈,主要用于暂存寄存器数据。不过在子程序dtoc和ddtoc中,我还用栈存放参数%10的值,因为形成字符串时需要逆序写到内存。

2、在dtoc和ddtoc中,为了区分保存的寄存器数据和十进制数的ascii值,特意往栈中压入一个0,作为“桩”。

3、主程序中在循环跳转的loop语句被注释掉:“;loop show ;报错:jump destination too far ,所以自己手动判断cx来跳转。”,原因正如说明,偏移超过了一个字节,所以我自己修改判断cx而利用jmp(jmp near)来实现跳转。因为所有有条件跳转都是短转移,是不是把循环中间的一些内容也写到子程序来减少偏移更好?

4、对显示时的起始行和列偏移的数据,我都统一放在数据段中,可以很方便的修改来查看效果。  阅读全文

posted @ 2012-06-04 10:20 Tim 阅读(981) | 评论 (0)  编辑

王爽《汇编语言第二版》第9章实验9 解答
     摘要: 编程:在屏幕中间分别显示绿色、绿底红色、白底蓝色的字符串"welcome to masm!"。

1、这种实现是我的第二个版本,第一个版本是将要显示的字符和字符的颜色属性都一起定义,然后就是从偏移地址读取写到显存,比如,绿色显示的定义如下:
db 'w',82h,'e',82h,'l',82h,'c',82h,'o',82h,'m',82h,'e'...
但是这样的话,首先'welcome to masm!'要重复3次,然后颜色属性就要重复更多了。既占用内存,修改也很麻烦。所以就将字符串和颜色属性分开定义,在逻辑处理时来写内存。
2、对字符颜色属性,可以很方便的通过修改“db 82h,0ach,0f9h”一句来查看不同的效果。
3、关于行偏移和列偏移的计算,我在代码中已经给出了详细的说明,应该很清楚了。同样的,我也将这些数据单独定义在数据段,可以很方便的修改以查看效果。  阅读全文

posted @ 2012-06-04 09:30 Tim 阅读(2900) | 评论 (3)  编辑

王爽《汇编语言第二版》第8章实验7 解答
     摘要: 实验7 寻址方式在结构化数据访问中的应用

本题设计的好处就在于:
1、年份year是用ascii表示,所以要4个字节。而公司收入又是一个dd类型,也是4个字节。所以这两个数据可以共用一个寄存器表偏移,我的程序用的是si。
2、读入收入时,就有意用dx存高位,用ax存低位;读入雇员数时,用bx来存储,这样就能直接用div求人均收入,也就不需要额外的寄存器转存的过程。
3、故意将table段地址用ss存,这样就顺理成章的用bp作为table段的偏移。就不需要显式标出段寄存器了。
基于以上设计,也就不需要额外弄堆栈,寄存器等,而且一个循环就能实现了。  阅读全文

posted @ 2012-06-01 14:41 Tim 阅读(1725) | 评论 (1)  编辑

王爽汇编语言(第2版)实验2 学习
     摘要: 仔细观察图3.19中的实验过程,然后分析:为什么2000:0~2000:f中的内容会发生改变?

可能要再做些实验才能发现其中的规律。如果你在这里就正确回答了这个问题,那么要恭喜你,因为你有很好的悟性。大多数的学习者对这个问题还是比较迷惑的,不过不要紧,因为随着课程的进行,这个问题的答案将逐渐变得显而易见。  阅读全文

posted @ 2012-05-31 10:13 Tim 阅读(2080) | 评论 (0)  编辑

[转]汇编语言课程设计——调试并修改一个小的内存驻留程序(http://www.4ngel.net/article/31.htm)
     摘要: 学习DOS下内存驻留程序的基本思想,了解与熟悉用汇编语言编写程序。本课程设计将完成一个小的.com程序,运行程序后,你的所有按键输入(指在DOS或Windows的DOS模式下)将不被接受,所有输入将被替换成特定的字符串(回车键除外)。  阅读全文

posted @ 2009-09-25 18:03 Tim 阅读(468) | 评论 (0)  编辑

【转】MASM32开发环境和MASM汇编器版本
     摘要: MASM32开发环境和MASM汇编器版本  阅读全文

posted @ 2008-06-09 18:49 Tim 阅读(2584) | 评论 (0)  编辑

<2007年11月>
28293031123
45678910
11121314151617
18192021222324
2526272829301
2345678

导航

统计

公告

本博客原创文章,欢迎转载和交流。不过请注明以下信息:
作者:TimWu
邮箱:timfly@yeah.net
来源:www.cppblog.com/Tim
感谢您对我的支持!

留言簿(9)

随笔分类(173)

IT

Life

搜索

积分与排名

最新随笔

最新评论

阅读排行榜