永发信息网

初学者学汇编入迷快,还是C呢.还是直接学高级点的呢?

答案:1  悬赏:0  手机版
解决时间 2021-05-06 06:34
  • 提问者网友:未信
  • 2021-05-05 13:07
希望高手指点指点,能否给个学习思路,我超不喜欢看书,有视频教材最好不过'
最佳答案
  • 五星知识达人网友:骨子里都是戏
  • 2021-05-05 13:41

如果你没有任何编程基础,当然去学习C语言的基础,再回过头来学习汇编,其实汇编和C语言可以同时学习,汇编和C语言配合时非常好的,函数可以互相调用,还可以用来编写操作系统,还可以在C语言中嵌入汇编.


你先去学习C语言,再去学习汇编。


我可以郑重的说,没学习过汇编的人没资格谈论计算机的硬件和软件,网络.


很多高手都是从汇编出来的,汇编的好处就不多说了,百度一下一大堆.


汇编可以让你深入底层,学习计算机组成原理和操作系统,微机原理,和Linux内核.... ..


会汇编的人和不会汇编的人的差别在与调式程序.... ...不懂汇编的人无法分析语言.


我做个例子.


int a;  你以为开辟内存了么?错,在汇编里面没有.


int a=3; 才开辟了. 汇编的代码表示,版本有很多.我个人的.  mov [ebp-2],3  ,很奇怪吧~! ebp 是帧指针,内存从上而下,  学过汇编的人才知道  堆和栈的概念是不一样,没学过的人就满嘴的 堆栈,算法...其实一点都不了解 系统底层和性能.


c: for(i=1;i<9;i++) 和  c++: for(int i=1;i<9;i++)


用汇编表示:


    mov [ebp-2],1


  for1: inc dword btr [ebp-2]


    mov eax,[ebp-2]


    cmp eax,9


    jl for1


你就可以分析语言了,原来C,c++ 的  在  for(int i=1  和 for(i=1 差不多.... 哪怕你在C语言前面定义了 int i;


汇编也没有开辟内存给你.... ...


所以不懂汇编的人和懂汇编的人差别很大...


无论是算法和软件开发,都需要底层的知识.... 软件是调式出来的,不是编写出来的.  算法是为了 追求效率才弄出来的,但是不能脱离 操作系统这个平台...


如果你学习完了汇编,建议你去学习一下 数字电路,这样你对微机原理能更好的理解,比如 总线 和 引脚... ..  


数字电路 其实很好学习,只要下一番 辛苦,只要你学习了,你感觉是快乐的,不要忘记了, 计算机到处都是电路,不是现在的 windows操作系统....


数字电路  重要的是  逻辑代数和卡诺图,还有cmos,组合逻辑电路,还有一些... ...


好好学习吧~! 我的专业 是计算机网络的,我可以学习,你怕什么.~!~!


我的智商也没有多高啊~!  数学要好好学习.... ...线性代数和离散数学非常好的课程,你看见概率论你像看见逻辑代数一下,呵呵呵呵,开玩笑的...高等数学感觉现在没什么用,你可以以后学习.... ..不要浪费时间,这个东西博大精深,不是现在的 课本可以解决的,要好好学习 ,就要空出时间,如果学不好,还不如不要学习,不是么? 加油~!

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯