第1个回答 2011-09-23
1、可以直接学习。不过建议还是先学16位的,不仅简单些,而且资料非常的多。还更容易弄明白计算机底层原理。当然直接学问题也不大。
2、确实不同,每次都要学,不过你精通一个就行了,另外的现学就成了,基本只是指令集的不同而已。其他都大同小异,花费1天功夫而已。
c和c++有很多概念都不一样,如同钢笔和毛笔的差距,会钢笔不一定会毛笔,而不同汇编之间是钢笔和圆珠笔的差距,会一样基本就会另外一样。
-----举个例子,我以前学的是单片机51的汇编,后来单位用pic开发,我基本上就大概看下pic原理,打印个指令集就开始写程序了。就好比你会用钢笔写字了,再叫你用圆珠笔写字一样,基本没什么不同。
第2个回答 2011-09-21
1,本想学习 32位的汇编, 但怕 学到一半 还要返回学16位的基础,...
--想学就学,不会返回重学16位的。
2, 汇编的指令在不同cpu的实现也是不一样的,
--是的,换用不同的CPU,就要重新学一套汇编语言。
--C、C++,是高级语言,针对不同的CPU,有不同的编译软件,所以高级语言能够通用。
汇编,了解基本概念就够了,没有必要深入学习。
那么,16位的就足够了。
学80x86的汇编,基本没有什么用处。
除非,你想搞硬件,设计主板、打印机、路由器、机顶盒...
呵呵,各种汇编,学不过来的。
第3个回答 2011-09-21
1.一本汇编书,了解基本用法,不论16位,32都没关系。有个印象即可,不必死记。
一本计算机组成,比如,<计算机组成与设计.硬件.软件接口>,了解微指令的执行过程,同时可以了解汇编的编程特点-“先否定再肯定”。
如果还不爽,再看下文章<Linux分段和分页机制>,基本可以安心了。精力过剩了,则看下<保护下80386及其编程>。
之后,进入应用阶段,<加密与解密>,<windows环境下32位汇编语言程序设计>,等,走几遍例子,很快的。
以后有需要,可以学下SSE等指令集(很容易上手的)。
2.应该是指amd和intel的不同的指令集,差不多的,看你实际工作需要吧。花点时间就会用的。这个差异和c/c++不好比。
学c10年,可以是高手;c++ 学10年,成高手也不容易,除了语法层面外,c++更多是一种设计思想,所以设计模式,要掌握到出神入化的程度。c,汇编相对来说,实际应用主要追求效率,简单多了。
第4个回答 2017-05-11
有必要,因为这是基础,关于段、偏移量等概念,书本上的介绍都是以此为根据的。而且,汇编语言的教科书大部分都是按16位机来介绍和讲解的。