代码之家  ›  专栏  ›  技术社区  ›  grepNstepN

swf中actionscript标记的位数学

  •  0
  • grepNstepN  · 技术社区  · 9 年前

    我正在尝试智能地解析actionscript标记,我检查了几个反汇编/反编译swf文件的开源程序的源代码。

    检查 the doc 在第29页,它指出

    “注意:TagCodeAndLength字段是一个两字节字,而不是一个10位的位字段,后跟一个6位的位域。 SWF文件的小字节顺序使这两种布局不同。”

    签入010编辑器,第一个标记是

    0x44 0x11 
    

    其以某种方式转换为0x45(然后是长度)。然而,根据文件(上文引用),它似乎没有任何意义:

    0100 0100 0001 0001
    

    甚至根本看不出来

    0110 1001
    

    有人能解释一下吗?

    1 回复  |  直到 7 年前
        1
  •  0
  •   Michael Antipin    9 年前

    LE顺序表示两个字节的值 0100 0100 0001 0001 应理解为 0001 0001 0100 0100 (字节顺序颠倒),这是标记的短标题 1000101 (0x45,dec 69),长度为0x100(dec 4)。