zoukankan      html  css  js  c++  java
  • 从汇编语言的变化如何,我的脑残粉

        这可以追溯到一阵裕兴用汇编语言学习机我第一次接触。裕兴是采用了浮点BASIC游戏BASIC只是瘾,该机器可以深入挖掘的潜力,结果公布6502磁盘汇编语言。我是第一次买,赠一本简单的编程手冊(十几页吧。蛮薄的)。

    可说出来不怕各位童鞋笑话,我基本上是一句指令都没写出来的干活啊!

    :(

        在我人生正式课堂晓(xiao二声)习的最后1年里,我曾从图书馆借阅了《IBM汇编语言程序设计》一书,假设说6502时不知汇编为何物,那么此时就是到了能看见汇编皮毛上浮的那层灰的境地啊。

    当时看了几天就看不下去了,由于曾经学的gw basic、QB、turbo C之类的没涉及到硬件啊。再加上当时有没有真机上手,咋能入门呢?当时宿舍里自己攒了台486,装的是DOS,偶尔会用QB写两行代码,然后就知道了原来DOS下还是能够装nes。md等模拟器玩滴,然后就没有然后鸟...

        随后的大部分时间里我都是用VB在写代码,当时也看了一些计算机系统结构和组成原理的书籍,比較有印象的事实上是那本科普性质的计算机名著《编码的奥秘》。随着对编程、对系统领悟的加深,我对汇编的兴趣又回来鸟!

    于是重看了《IBM汇编语言》那本书,这回真的看懂了。还下了masm5.0和6.11编译器练了不少代码。于是一发不可收拾,16位汇编看完再看罗云彬32位的汇编语言程序设计,结合微软的《win32程序猿手冊》,当时貌似认为自己如鱼得水。神马样例都拿汇编写;一个C几行代码就能完毕的事,非用汇编写一大坨。如今但是连C都用的非常少了。大多数第一反应是用ruby来写啊!只是那时重复也就在windows下折腾,没linux啥事儿。

    学完了win32汇编,我又看了《80x86保护模式(PM)编程》。然后疯狂在网上搜索关于汇编写NT驱动的代码,找人家写好的汇编驱动框架练习。如今回过头看,我真是呵呵了。那时还不明确敏捷,还不懂unix到底是啥;也不知道啥是KISS。啥是DRY。所以当时犯了非常多错误,走了不少弯路。当然期间还看了非常多其它的书,我也是在那个时候逐渐领略到C语言之美。知道了啥叫C标准。

    我就纳闷了啊,几年前在老谭的C语言程序设计里咋就没有领悟到啊?

        我就是在大约这个时候成天泡在csdn论坛的VB以及汇编版里面。那时的csdn还没有钻石,最高仅仅有5颗星星,并且某人也一直把持总专家榜NO.1位置非常久了啊!那时仅仅要一个版3颗星全部版都是3颗星级别,仿佛某一领域达到3颗星就是全部领域的砖家了。那时的我仅仅是2个三角,当时孩子气的本猫还是蛮羡慕星星的呀!那时的csdn论坛还不能发图,并且仅仅有一个论坛:资源,博客。外包,主页官网啥的统统不知在哪呢。所以我才干注冊到4位的ID啊!

    開始是我老问问题,由于是菜鸟嘛,那时汇编版的(懒虫)易水,zara(为数不多的还活跃在第一线的劳模呀),win32api(你没看错,这个是ID名啊)等老一辈的高手帮助我非常多。如今我渐渐问问题少了,回答问题慢慢多了,还当上了汇编版的“斑猪大人”。上一届汇编版版主有4个大牛呢。这一届就本猫一仅仅。事实上水平也就那么半瓶子。再加上如今我渐渐不怎么实际写汇编代码了,所以有自己模棱两可拿不定主意的问题,也就不敢随便乱答啊!回答的大多都是理论上的东东,仅仅是遇到实在刁钻古怪问题,心痒难耐的动手測试后才会回答呀!(所以各位童鞋多出古怪刁蛮的问题吧!)

        现在的汇编论坛还能够看到不少标榜着汇编万能、“我不知道其它语言、反正汇编就是牛X”、”汇编最底层,能操纵机器,所以功能最强“之类的观点。这样的观点这是我不认同的。也是会给刚開始学习的人带来误导的。我不反对某些地方汇编的确非常强大。并且PK无对手!比方机器相关,效率至上的应用、比方逆向破解。shellcode的working等等,但这不能说汇编非常”强“,更不能说Ta是万能的!汇编是有若干长处,但其不可忽视的缺点还少吗?我还是强调一般意义上全部语言没有好坏之分(当然某些明显设计有问题的语言除外),仅仅在乎你的需求不同。

    霍元甲曾教导我们:世间武功本无强弱之分,仅仅是练武的人有强弱之分“。李小龙同志也曾向粉丝说过:”我不怕会1万种踢法的人,我怕的是1种踢法练过1万次的人!

    “。这样的熟能生巧,干一行钻一行的道理。也不用本猫给大家普及了吧?更何况现现在”乱世出语言“的情况下。一个项目使用多种语言更是家常便饭,所以还是要努力晓(xiao二声)习啊!还有UNIX下著名的胶水语言概念啊!

    这是还有一个话题了哦。有兴趣的童鞋能够參考《UNIX编程艺术》

        如今的我已从以前绿油油的骚年变为了胡子拉碴的欧巴,已经不是什么某某语言的”死忠“鸟,不管是汇编。C,ruby,shell,vb。c#,asp,tk/tcl等等各种语言我都喜欢,都用过,如今也还用,将来会一直用!还有非常多新的语言扑面而来,我也会欣然笑纳的哦!话又说回来,编程不仅仅是语言的事,软件project、社会project、系统结构、心理学、美感直觉、算法等等那多了去了,这是我们几辈子都学不完的啊!跟何况我仅仅是一仅仅熊猫,不是神马程序猿哦!:)

    版权声明:本文博客原创文章,博客,未经同意,不得转载。

  • 相关阅读:
    【基础算法】- 全排列
    【基础算法】- 2分查找
    区块链培训
    Static Binding (Early Binding) vs Dynamic Binding (Late Binding)
    test
    No data is deployed on the contract address!
    "throw" is deprecated in favour of "revert()", "require()" and "assert()".
    Variable is declared as a storage pointer. Use an explicit "storage" keyword to silence this warning.
    京都行
    Failed to write genesis block: database already contains an incompatible
  • 原文地址:https://www.cnblogs.com/gcczhongduan/p/4646517.html
Copyright © 2011-2022 走看看