程序员怎样才能达到编程的最高境界?最高境界绝对不是你去编两行代码,或者是几分钟能写几行代码,或者是用什么所谓的可视化工具产生最少的代码这些工作,这都不是真正的高手境界。即使是这样的高手,那也都是无知者的自封。
我认为,一个程序员的成长可分为如下六个阶段。
Ø 第一阶段
此阶段主要是能熟练地使用某种语言。这就相当于练武中的套路和架式这些表面的东西。
Ø 第二阶段
此阶段能精通基于某种平台的接口(例如我们现在常用的Win 32的API函数)以及所对应语言的自身的库函数。到达这个阶段后,也就相当于可以进行真实散打对练了,可以真正地在实践中...


- [chaplinyip] 练拳不练功,到老一场空。不要过分关注语言,它只是拳脚上的招式罢了,缺乏思想再好的语言亦只能沦为花拳绣 09/03 21:11
- [ameteur] 不要说VB不行,它几乎能编出所有程序。 09/03 18:29
- [tomato] 第一题的答案不正确。 05/19 18:06
- [mess] 速度真快啊,前两天还做第三章的检测题呢 呵呵 这个可以debug下直接查看结果是否正确,好像是 05/11 18:16
- [mess] 答案不对,你根据push pop的操作步骤再想一想。 05/11 18:14
- [bade90] 写错了.郁闷 05/07 19:15
- [wsrf] 分析的很对。 05/06 23:22
- [wsrf] 博主如果添100H,还能符合 CS*10H + IP = 10000H吗? 05/06 23:21
- [bade90] 王爽的汇编学完了,还得学32位的呢。 哎。。 05/06 12:08
- [tomato] 这种程度就算彻底学明白了! 05/04 12:03
- [tomato] 期待博主博客中每个检测点作业! 03/23 20:30
[2009-08-31 02:22] 高手成长的六个阶段
阅读全文 |
评论次数(0) |
浏览次数(520) |
所属类型(心情杂谈)
[2009-05-09 11:48] 标志寄存器
1.标志寄存器具有什么样的功能?
(1)用来存储相关指令的某些执行结果;
(2)用来为CPU执行相关指令提供行为依据
(3)用来控制CPU的相关工作方式。
2.每个标志位的详细解释
ZF标志,零标志位。计算结果为0 则ZF = 1,否则为0
PF标志,奇偶标志位。计算结果的二进制数中1的个数是否为偶数,则PF = 1,否则为0
SF标志,符号标志位,如果计算结果也负,则SF = 1
*就像数据和指令都是二进制信息
一个数据也可以是有符号数也可以是无符号数
判断一个计算是有符号计算,还是无符号计算的时候,看SF标志位就可以知道
CF标志,进位标志位,保存无符号运算中的进位...
(1)用来存储相关指令的某些执行结果;
(2)用来为CPU执行相关指令提供行为依据
(3)用来控制CPU的相关工作方式。
2.每个标志位的详细解释
ZF标志,零标志位。计算结果为0 则ZF = 1,否则为0
PF标志,奇偶标志位。计算结果的二进制数中1的个数是否为偶数,则PF = 1,否则为0
SF标志,符号标志位,如果计算结果也负,则SF = 1
*就像数据和指令都是二进制信息
一个数据也可以是有符号数也可以是无符号数
判断一个计算是有符号计算,还是无符号计算的时候,看SF标志位就可以知道
CF标志,进位标志位,保存无符号运算中的进位...
阅读全文 |
评论次数(0) |
浏览次数(503) |
所属类型(心情杂谈)
[2009-05-01 14:38] 模块调用示例
assume cs:code,ds:data,ss:stack
data segment
db 'welcome to masm!' ;16byte
data ends
stack segment
db 128 dup (0)
stack ends
code segment
start:mov ax,data
mov ds,ax
mov bx,0
mov dh,12 ;设置参数
mov dl,30 ;设置参数
call plus ;调用模块
mov...
data segment
db 'welcome to masm!' ;16byte
data ends
stack segment
db 128 dup (0)
stack ends
code segment
start:mov ax,data
mov ds,ax
mov bx,0
mov dh,12 ;设置参数
mov dl,30 ;设置参数
call plus ;调用模块
mov...
阅读全文 |
评论次数(1) |
浏览次数(533) |
所属类型(心情杂谈)
[2009-05-01 14:35] 算出显存偏移地址模块
字符串输出模块
调用方式
call Plus
参数dh 传递行数
参数dl 传递列数
注意:栈至少有点空间才可以,还有因为SI里保存着算出的偏移地址,所以不用保存SI寄存器
子程序
Plus:push ax
push dx
mov al,160
mul dh
mov si,ax
mov al,2
mul dl
add si,ax
pop dx
pop ax
ret...
调用方式
call Plus
参数dh 传递行数
参数dl 传递列数
注意:栈至少有点空间才可以,还有因为SI里保存着算出的偏移地址,所以不用保存SI寄存器
子程序
Plus:push ax
push dx
mov al,160
mul dh
mov si,ax
mov al,2
mul dl
add si,ax
pop dx
pop ax
ret...
阅读全文 |
评论次数(1) |
浏览次数(605) |
所属类型(心情杂谈)
[2009-05-01 14:33] 字符串输出模块
字符串输出模块
调用方式
call Print
参数:cx传递要输出的字节数
参数:si 传递显存的偏移地址
参数:bx传递数据的偏移地址
参数:dl传递颜色的值
注意:为了暂时保存,栈至少有点空间才可以
子程序
print:push ax
push bx
push cx
push dx
push si
push es
mov ax,0b800 ;设置段地址
mov es,ax ...
调用方式
call Print
参数:cx传递要输出的字节数
参数:si 传递显存的偏移地址
参数:bx传递数据的偏移地址
参数:dl传递颜色的值
注意:为了暂时保存,栈至少有点空间才可以
子程序
print:push ax
push bx
push cx
push dx
push si
push es
mov ax,0b800 ;设置段地址
mov es,ax ...
阅读全文 |
评论次数(1) |
浏览次数(306) |
所属类型(心情杂谈)
[2009-04-23 18:37] 就因为Segcode
第九章的检测题花了我2个星期
气死我了,总是有一道题错
昨天去论坛转了一圈发现 答案是segcode
晕死,我在书上没看到seg code 啊
哎....真郁闷 我连seg code 是什么意思都不懂捏....
气死我了,总是有一道题错
昨天去论坛转了一圈发现 答案是segcode
晕死,我在书上没看到seg code 啊
哎....真郁闷 我连seg code 是什么意思都不懂捏....
阅读全文 |
评论次数(1) |
浏览次数(197) |
所属类型(心情杂谈)
[2009-04-15 20:57] 哎..该怎么办呢
今年20岁了.
别人都能自己去挣钱了.
真后悔当初学的VB 现在一点用都没有
想直接学完C++ 去编程序,开发软件挣钱
看着别人都找到工作了
自己心里不是很痛快
都说不要去当程序员
但是我喜欢.我爱程序,
-,- 说实话汇编不怎么喜欢
要不是为了破解,我才懒得学习呢
好郁闷ing.......
别人都能自己去挣钱了.
真后悔当初学的VB 现在一点用都没有
想直接学完C++ 去编程序,开发软件挣钱
看着别人都找到工作了
自己心里不是很痛快
都说不要去当程序员
但是我喜欢.我爱程序,
-,- 说实话汇编不怎么喜欢
要不是为了破解,我才懒得学习呢
好郁闷ing.......
阅读全文 |
评论次数(4) |
浏览次数(375) |
所属类型(心情杂谈)
页码数(1):
1