摘要: 郭天祥键盘部分的代码真是冗长,难道是为了易懂,但也不是越长越好懂啊,看看我写的。扫描法#include #include sbit we=P2^7;sbit du=P2^6;unsigned char code table[] = {0x3f , 0x06 , 0x5b , 0x4f,0x66 , ... 阅读全文
posted @ 2014-01-16 13:35 ZackCoder 阅读(354) 评论(0) 推荐(0) 编辑
摘要: 看郭天祥的单片机书中数码管部分,使用 P0=0xff 的方法可以消除段选数据对位选的干扰,另外使用我下面的方法可以达到同样的效果。但即便这样数码管仍有影子,这种状况是,当前数码管有下一个数码管的影子,或者当前数码管有前一个数码管的影子。分析一下产生原因,当我们点亮一个数码管后,总要先将段选或者位选改为下一个数码管的值,而不能同时改变。当先改变段选时,那么当前数码管就会有短暂的时间显示下一个数码管的数字。当先改变位选时,下一个数码管就会有短暂的时间显示当前数码管的数字。那么解决方法是,先将段选置0送入锁存器,改变位选的值为下一个数码管,最后再改变段选值。同理另一种方法是,先将位选赋值 0xff 阅读全文
posted @ 2014-01-15 17:35 ZackCoder 阅读(2823) 评论(0) 推荐(0) 编辑
摘要: 原理及介绍来自维基百科http://zh.wikipedia.org/wiki/%E9%82%8F%E8%BC%AF%E5%8D%80%E5%A1%8A%E4%BD%8D%E5%9D%80个人用的小程序/*#lba=(#c*H+#h)*S+#s-1#c=#lba/(S*H)#h=(#lba/S)%H#s=(#lba%S)+1#c、#h、#s分别是磁柱、磁头、扇区的编号(起始值0、0、1)#lba是逻辑区块编号(起始值0)H=heads per cylinder,每个磁柱的磁头数S=sectors per track,每磁道的扇区数*/#include int main(void){ in... 阅读全文
posted @ 2014-01-05 16:30 ZackCoder 阅读(1024) 评论(0) 推荐(0) 编辑
摘要: 子程序dtod将dx、ax表示的32位数字转化为si指向的以0结尾的字符串,dtoc、divdw、show_str按照书中要求,前面的实验8用于生成table段的代码改成子程序build。 1 data segment 2 db '1975','1976','1977','1978','1979','1980','1981','1982','1983' 3 4 db '1984','1985','1986' 阅读全文
posted @ 2013-10-17 13:15 ZackCoder 阅读(742) 评论(0) 推荐(0) 编辑
摘要: 如果从每次循环写入一个数据行考虑的话,关键是储存年份、收入、人数3个信息的地址来保证每次读取能找到数据的位置,每完成一行后这3个地址分别增加4、4、2。网上的例子有使用bx、bp、si、di中的3个来存储,另1个存储写入行的地址。也有减少为2个来存储的,因为有2个的增量都是4,使用1个寄存器,另一个用偏移量来定位。我用堆栈来储存这3个地址,使用时移动到si寄存器。没贴出数据部分。 1 stack segment 2 dw 0,84,168 3 stack ends 4 5 code segment 6 assume cs:code,ds:data,ss:stack 7 ... 阅读全文
posted @ 2013-10-10 13:12 ZackCoder 阅读(384) 评论(0) 推荐(0) 编辑
摘要: 世界上没有两片完全相同的树叶,每个人出生的家庭不同,受到教育不同,得到的机会不同,受到不同环境的不同影响,出色的才能得以显露或埋没,人格得到正常或歪曲的发展。但即便这样,多数人给予为梦想奋斗不息充分的肯定,尽力保证任何人只要肯努力就能超越那些初始条件更好的人。为什么要超越自己,而不是超越别人,因为对别人轻松的事,对自己却不一定轻松,因为除去个人努力外,还有环境、家庭因素。不该用别人的样子来要求自己,而是设计一个更好的自己来要求自己,思考出自己要成为什么样的人。每天只为做出更好的自己,这就足够了。通过将注意力放到自己而不是别人身上,审视自己,可以最大保证“不因外界环境的改变而放弃做正确的事”这种 阅读全文
posted @ 2013-10-03 19:44 ZackCoder 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 大学的老师经常换,但这不是说老师好坏并不重要,我写下对大学前两年遇到的老师的评价。仅代表个人观点,但我尽量公平客观,本人长春理工11级电信学院学生。----------邬国辉,高等数学思路清晰,人精神,会安排习题课,课堂节奏紧凑,也因为大一的课所以基本上都听。王再玉,线性代数内容多,节奏快,思路清晰... 阅读全文
posted @ 2013-10-03 15:32 ZackCoder 阅读(1118) 评论(0) 推荐(0) 编辑
摘要: C语言写的,switch计算部分采用了一本狂人C书的类似写法,感觉很有创意。 1 #include 2 3 4 typedef struct 5 { 6 int year; 7 int month; 8 int day; 9 }Date;10 11 int date_minus(Date *now,Date *birth);12 int numOfYear(Date *date);13 int isLeapYear(int year);14 15 int main(void)16 {17 Date birth={1993,4,4};18 Date ... 阅读全文
posted @ 2013-09-18 21:00 ZackCoder 阅读(743) 评论(0) 推荐(0) 编辑
摘要: 调试无输出,起初以为是那个warning的问题,后来才知道这个系统printf直到遇到'\n'换行符才输出,VC6用习惯了没想到还有这样的,网上说这样是节省系统资源。那个warning暂时还没看到影响,先不管了,哎,看看linux下的第一个程序,打印星号,纯属娱乐。 1 #include 2 #define LINE 25 //奇数 3 int main() 4 { 5 int i,j; 6 int sym=1; 7 int nspace=LINE/2,nstar=1; 8 for(i=0;i<LINE;i++) 9 {10 ... 阅读全文
posted @ 2013-09-17 20:26 ZackCoder 阅读(1752) 评论(0) 推荐(0) 编辑
摘要: 最近安装了在ubuntu基础上改的elementaryos,很漂亮,学校提供的破linux客户端不能连上,网上常见的也是旧版本。最后在百度Dr.com贴吧和这个帖子http://forum.ubuntu.org.cn/viewtopic.php?f=156&t=372165 终于找到了。我的linux内核版本是3.2.0,ubuntu也可用,但CentOS6.4就不好使了,还在找。学习linux得有先有网啊,我这里是长春理工。这输入法啊,别扭。 阅读全文
posted @ 2013-09-17 20:07 ZackCoder 阅读(328) 评论(0) 推荐(0) 编辑