fx2422esplus吧 关注:26贴子:903
  • 14回复贴,共1

20130725 4行ASCII拼字发现过程

只看楼主收藏回复

@11品牌baby 你关心的东西.
一切要从单行ASCII拼字说起.有很多字符是可以随便打而不影响最终效果的,那些无关紧要的字符以前我习惯性按797979……因为我觉得两个键交替按比较顺手.现在我们知道*5*5后面的4个字符会决定屏幕下面两行的乱码内容.但是当时我不知道,所以用7979……的时候下面两行总有乱码.后来改成1313……得以解决.单行拼字解决了,后来三行也解决了,但是用这种方法有一行始终无法显示任何东西.于是我去尝试其它方法,那时我习惯了131313……LX继续


IP属地:广东来自手机贴吧1楼2013-07-25 10:00回复
    但是觉得1313……可能让原本能显示内容的行显示空白,于是又改回7979……然后想起某吧友提供的8sin86,于是控制字符用8sin8sin试试,好家伙,出了4行7979……(或者9797……).后来经过寻找,第100个字符是关键字符,那个9改成其它字符都不能显示7979……然后探寻显示的字符都是第几个到第几个,发现重叠十分严重,又无法改变位置,结果我当时放弃了这个线索.后来想起来了,就在想跟这比较像的控制字符会不会有类似效果.于是把8sin8sin改成6sin6sin也出现了类似效果.


    IP属地:广东来自手机贴吧2楼2013-07-25 10:11
    回复
      改成4sin4sin也出现了类似效果.但是感觉4sin4sin的好像不太一样.于是又开始研究4sin4sin溢出的字符出自什么位置,惊奇地发现没有重叠,第一行7到22,第二行24到39,第三行41到56,第四行58到73.其中第23,40,57个不会显示在任何一行上.不过有个问题是53到56会显示在第三行最后,这4个可是不能乱打的,怎么办呢?突然想到个以前没有想到过的方法,先用进异常模式的方法使堆栈发生移动,然后AC,重新进行溢出,此时的关键字符就不再是53到56了.LX继续.


      IP属地:广东来自手机贴吧3楼2013-07-25 10:23
      回复
        不过又诞生了一个问题,那个关键的9又在哪里?经过寻找发现在第96个(已经不是第100个了),并且也会随堆栈移动而移动.它永远位于控制字符第1位(第53)之后第43位(第96).所以可以让堆栈移动而使4sin4sin和9都移到合适的位置.用这种方法连续的不会显示在屏幕上的字符非常有限,考虑极端情况,如果那个9在第6位,那控制字符4sin4sin就应该在第63位开始,显然不行.所以关键的9不可以位于74到106(也就是6)这一片.别忘了前面说了3个单个的不会显示的字符,但9必须位于第偶数个字节.LX继续.


        IP属地:广东来自手机贴吧5楼2013-07-25 10:36
        回复
          所以,第23和57都不行,那么只能移到40.计算一下,4sin4sin就是第97到100,符合要求.所以只剩下最后一步,就是把堆栈移动到这个位置,如果只按=需要17下.但是按17下左右进入的是极不稳定的乱点模式,有些模式甚至到那里时AC就死机.当时在这里出了点问题.而如果继续=那就得多按25下,那进的更是不稳定的模式.所以,必须用到CALC.但是log根号log根号……时CALC死机,不知道为什么.所以改用分数线根号分数线根号……剩下的不用我说了吧?


          IP属地:广东来自手机贴吧6楼2013-07-25 10:47
          回复
            自己精吧
               --来自 赞助商
            ⣺⣿⠅⠐⢳⡶⠠⡭⢡⡯
            ⠒⠗ ⠤ ⠮ ⠬⣷⣔  独家赞助!】
               --来自助手版贴吧客户端


            IP属地:美国来自Android客户端7楼2013-07-25 10:52
            收起回复
              其实我觉得那个根号44幂44是三行大字拼字的重点,有可能还会出现三行大字闪字呢


              IP属地:广东8楼2013-08-25 11:06
              收起回复