大多数人认为学习程序集是必不可少的,了解计算机的基本工作原理很重要,依此类推。但是我正在寻找一些实用的建议,这些建议将使学习Assembly的努力变得值得。
您有什么建议?如果不学习汇编语言和指针/内存管理,我会错过什么呢?
最佳答案
我认为学习底层语言(例如汇编语言,指针和内存管理)的主要实践优势是,当您编写或查看高层代码时,您更有能力直观地或潜意识地发现性能问题或其他陷阱。
普通的开发人员可能会编写一个简单的循环并认为:“此代码遍历一组整数并将每个整数写入控制台。”
专业的开发人员可能会写相同的循环,并认为:“此代码遍历一组整数,并且必须将每个元素放入框以调用ToString方法,并且ToString必须以10为基数格式化字符串,这在某些情况下是不平凡的,并且那么装箱的整数和格式化的字符串都将很快有资格进行垃圾回收,因为将不保留任何引用,并且第一次运行此方法时,将需要JIT'ed ...”,依此类推。
十分之九,没关系。但是,十分之一的专家开发人员很可能会注意到普通开发人员从未考虑过的代码问题。
关于pointers - 学习汇编的实际优势是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/422613/