题记:很多programer 写了很久程序,觉得自己可以按时交付任务,自己写的程序可以上线可以商用,然后上线后改改bug,不断优化,然后结题。然后再下个任务,如此反复循环乐此不彼,其实这样做得很好,也只是三流的程序员。二流的程序员不仅可以完成项目,而且可以带团队,而且可以帮别人解决所有问题,而且知道此项目为什么要做,更知道此项目能锻炼哪些技术功底,同样也可以在做项目的同时提高自己的水平,而且可以在做项目的同时让自己其他方面的技术能力得到深入得到提高,进而完成别人无法完成的任务,简言之,自己可以一肩挑而且可以好稳快健。当然这也只是二流,至于一流的程序员,不仅可以把整个项目一肩挑,而且可以在做其他项目的时候尝试新的架构算法,并学习完善,直接用在此项目上,用全新的思路做好全新的项目,并且做出后就是经典项目,值得各大公司学习模仿。简言之,一流程序员做创新。而大师级的程序员,就做的不仅是创新了,而是对整个领域的革新,让整个业界进入全新的时代。
很多知识,只有用到的时候才能发现其价值;至于用到哪里学到哪里,刚才已经提到了,这只是三流程序员所谓,而且这种程序员一般在业界很难长久扎实地做下去。所以, 千万远离三流程序员,如果想在程序员这个职位上奋斗,就要向一流甚至超一流的程序员看齐。
首先看8086的寄存器:
8086 有14个16位寄存器,这14个寄存器按其用途可分为(1)通用寄存器、(2)指令指针、(3)标志寄存器和(4)段寄存器等4类。
(1)通用寄存器
有8个, 又可以分成2组,一组是数据寄存器(4个),另一组是指针寄存器及变址寄存器(4个).
顾名思义,通用寄存器是那些你可以根据自己的意愿使用的寄存器,修改他们的值通常不会对计算机的运行造成很大的影响。
数据寄存器分为:
AH&AL=AX(accumulator):累加寄存器,常用于运算;在乘除等指令中指定用来存放操作数,另外,所有的I/O指令都使用这一寄存器与外界设备传送数据。
BH&BL=BX(base):基址寄存器,常用于地址索引
CH&CL=CX(count):计数寄存器,常用于计数;常用于保存计算值,如在移位指令,循环(loop)和串处理指令中用作隐含的计数器.
DH&DL=DX(data):数据寄存器,常用于数据传递。
虽然他们有其专门的功能,但是在实际使用过程中,往往没有那么大的界限。有时候甚至只是作为普通的操作数寄存器,depends on compiler
他们的特点是,这4个16位