我也是大三的,不过是自动化这个专业,偏弱电方向的专业,与你们电子信息工程差不多的。我也对计算机硬件比较感兴趣。
这么说,汇编这个东西,他是一种很底层的语言,其执行效率非常高,可以直接访问寄存器(这是其他语言所望尘莫及的),不过这就意味着你必须对计算机的内部构造和语言的逻辑性有很强的了解和驾驭能力。今后在公司里面,都没有说用汇编编个什么软件工程,或是做个什么项目,不是用C,就是C++。当然了,作为一个硬件工程师,除了对C这种高级语言必须有点门道之外,对像汇编这种接近机器语言的一种语言,我觉得掌握也是必须的,因为有时候代码出了问题,可以反汇编进行错误的查找,或者是再有兴趣一点,就是逆向工程进行软件的破解工作,那就是黑客之类的事了。
如果说想加强汇编方面的知识的话,我觉得是有必要,但且可不必太在意他,你说的那本汇编书,比较高阶,起点比较高,因为定位在32位的intel架构上。这样,如果你没有汇编的基础,看起来会比较困难。所以我建议你先看看这本书:
《ibm-pc汇编语言程序设计(第2版)》清华大学出版社。沈美明 著
我大二看的就是这本,讲的非常详细,对计算机内部的一些结构也有所涉猎
我最近才把《ibm-pc汇编语言程序设计(第5版)》人民邮电出版社。Peter Abel 著 沈美明 温冬婵 译
这本书读完,这本书是外国人写的,实用性很强,因为讲了一点实际的计算机debug应用和各种bios的底层应用。
这两本书,你要是读完了。16位的汇编就基本上学到这里就可以了,对于硬件,你需要掌握的就只有这些。当然如果说你是兴趣爱好的话,那你必须要学win32asm,就是32位的windows应用程序设计,那就比较犀利了,纯属爱好而已。但是对于你这个专业,学32位的汇编显然是多了。。
那书我有,感觉用处不大,去下载intel 开发者手册,卷2介绍各种指令,书建议先来本王爽的汇编语言,然后看罗云彬的《win32汇编语言程序设计》。。
我是看王爽汇编的