初学汇编前,有必要学习16位的汇编吗?
1,本人有c的基础现在想自学汇编(没有汇编基础),但汇编的书很多有16位32位,什么8086的,本想学习32位的汇编,但怕学到一半还要返回学16位的基础,请问可以直接学习...
1,本人有c的基础现在想自学汇编(没有汇编基础), 但汇编的书很多 有16位32位, 什么8086的, 本想学习 32位的汇编, 但怕 学到一半 还要返回学16位的基础 ,请问可以直接学习32位汇编吗 ? (深入学习汇编)
2, 大家说汇编的指令在不同cpu的实现也是不一样的 ,那岂不是 要学习的汇编还不是一种语言 ,就相当于(c和c++)都要学一样吗?
内行解答下? (请勿复制) 展开
2, 大家说汇编的指令在不同cpu的实现也是不一样的 ,那岂不是 要学习的汇编还不是一种语言 ,就相当于(c和c++)都要学一样吗?
内行解答下? (请勿复制) 展开
10个回答
展开全部
我给你些建议吧:
1.32位的直接学没问题。
2.首先,汇编语言千差万别,但是实际上汇编语言与硬件联系紧密,不同的体系结构会有较大差异,相同的体系结构差异不大。举个例子PC机,是x86结构的,这个就是平常说的16位、32位、64位,其实差异非常小。(PC机只是一种体系结构)懂一个其他看懂没问题。但是它和ARM、MIPS,的就不一样。DSP上面的就难懂一些。学习汇编用处很多,但是挑几种学习就可以了。
3.写给不懂精通计算机的回答者:汇编语言是最简单的但是同时也是最复杂的计算机语言。为什么需要汇编语言:你需要榨干硬件的最后一点油水、你遇到了无法解释的问题、你需要编写驱动程序甚至操作系统。对于写汇编程序来说,3年算个入门就不错。好多人甚至提出汇编效率比C语言差,原因非常简单,写C语言编译器的人十分精通汇编,他的程序产生的汇编码会比只学习过1-2年汇编的新手的代码质量好很多。当然,只要你精通,你就会发现人写的肯定能超过机器。汇编语言让你的程序能够发挥更大效能。但是不到万不得已,不推荐使用。此外还可以破解软件………………………………,能够精通的太少。少量学习对以后的计算机方面的造诣提升好处也很大
1.32位的直接学没问题。
2.首先,汇编语言千差万别,但是实际上汇编语言与硬件联系紧密,不同的体系结构会有较大差异,相同的体系结构差异不大。举个例子PC机,是x86结构的,这个就是平常说的16位、32位、64位,其实差异非常小。(PC机只是一种体系结构)懂一个其他看懂没问题。但是它和ARM、MIPS,的就不一样。DSP上面的就难懂一些。学习汇编用处很多,但是挑几种学习就可以了。
3.写给不懂精通计算机的回答者:汇编语言是最简单的但是同时也是最复杂的计算机语言。为什么需要汇编语言:你需要榨干硬件的最后一点油水、你遇到了无法解释的问题、你需要编写驱动程序甚至操作系统。对于写汇编程序来说,3年算个入门就不错。好多人甚至提出汇编效率比C语言差,原因非常简单,写C语言编译器的人十分精通汇编,他的程序产生的汇编码会比只学习过1-2年汇编的新手的代码质量好很多。当然,只要你精通,你就会发现人写的肯定能超过机器。汇编语言让你的程序能够发挥更大效能。但是不到万不得已,不推荐使用。此外还可以破解软件………………………………,能够精通的太少。少量学习对以后的计算机方面的造诣提升好处也很大
展开全部
1、可以直接学习。不过建议还是先学16位的,不仅简单些,而且资料非常的多。还更容易弄明白计算机底层原理。当然直接学问题也不大。
2、确实不同,每次都要学,不过你精通一个就行了,另外的现学就成了,基本只是指令集的不同而已。其他都大同小异,花费1天功夫而已。
c和c++有很多概念都不一样,如同钢笔和毛笔的差距,会钢笔不一定会毛笔,而不同汇编之间是钢笔和圆珠笔的差距,会一样基本就会另外一样。
-----举个例子,我以前学的是单片机51的汇编,后来单位用pic开发,我基本上就大概看下pic原理,打印个指令集就开始写程序了。就好比你会用钢笔写字了,再叫你用圆珠笔写字一样,基本没什么不同。
2、确实不同,每次都要学,不过你精通一个就行了,另外的现学就成了,基本只是指令集的不同而已。其他都大同小异,花费1天功夫而已。
c和c++有很多概念都不一样,如同钢笔和毛笔的差距,会钢笔不一定会毛笔,而不同汇编之间是钢笔和圆珠笔的差距,会一样基本就会另外一样。
-----举个例子,我以前学的是单片机51的汇编,后来单位用pic开发,我基本上就大概看下pic原理,打印个指令集就开始写程序了。就好比你会用钢笔写字了,再叫你用圆珠笔写字一样,基本没什么不同。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1,本想学习 32位的汇编, 但怕 学到一半 还要返回学16位的基础,...
--想学就学,不会返回重学16位的。
2, 汇编的指令在不同cpu的实现也是不一样的,
--是的,换用不同的CPU,就要重新学一套汇编语言。
--C、C++,是高级语言,针对不同的CPU,有不同的编译软件,所以高级语言能够通用。
汇编,了解基本概念就够了,没有必要深入学习。
那么,16位的就足够了。
学80x86的汇编,基本没有什么用处。
除非,你想搞硬件,设计主板、打印机、路由器、机顶盒...
呵呵,各种汇编,学不过来的。
--想学就学,不会返回重学16位的。
2, 汇编的指令在不同cpu的实现也是不一样的,
--是的,换用不同的CPU,就要重新学一套汇编语言。
--C、C++,是高级语言,针对不同的CPU,有不同的编译软件,所以高级语言能够通用。
汇编,了解基本概念就够了,没有必要深入学习。
那么,16位的就足够了。
学80x86的汇编,基本没有什么用处。
除非,你想搞硬件,设计主板、打印机、路由器、机顶盒...
呵呵,各种汇编,学不过来的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1.一本汇编书,了解基本用法,不论16位,32都没关系。有个印象即可,不必死记。
一本计算机组成,比如,<计算机组成与设计.硬件.软件接口>,了解微指令的执行过程,同时可以了解汇编的编程特点-“先否定再肯定”。
如果还不爽,再看下文章<Linux分段和分页机制>,基本可以安心了。精力过剩了,则看下<保护下80386及其编程>。
之后,进入应用阶段,<加密与解密>,<windows环境下32位汇编语言程序设计>,等,走几遍例子,很快的。
以后有需要,可以学下SSE等指令集(很容易上手的)。
2.应该是指amd和intel的不同的指令集,差不多的,看你实际工作需要吧。花点时间就会用的。这个差异和c/c++不好比。
学c10年,可以是高手;c++ 学10年,成高手也不容易,除了语法层面外,c++更多是一种设计思想,所以设计模式,要掌握到出神入化的程度。c,汇编相对来说,实际应用主要追求效率,简单多了。
一本计算机组成,比如,<计算机组成与设计.硬件.软件接口>,了解微指令的执行过程,同时可以了解汇编的编程特点-“先否定再肯定”。
如果还不爽,再看下文章<Linux分段和分页机制>,基本可以安心了。精力过剩了,则看下<保护下80386及其编程>。
之后,进入应用阶段,<加密与解密>,<windows环境下32位汇编语言程序设计>,等,走几遍例子,很快的。
以后有需要,可以学下SSE等指令集(很容易上手的)。
2.应该是指amd和intel的不同的指令集,差不多的,看你实际工作需要吧。花点时间就会用的。这个差异和c/c++不好比。
学c10年,可以是高手;c++ 学10年,成高手也不容易,除了语法层面外,c++更多是一种设计思想,所以设计模式,要掌握到出神入化的程度。c,汇编相对来说,实际应用主要追求效率,简单多了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
有必要,因为这是基础,关于段、偏移量等概念,书本上的介绍都是以此为根据的。而且,汇编语言的教科书大部分都是按16位机来介绍和讲解的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询