u654f 发表于 2012-3-16 17:14:15

求教,如何将机器码转化为汇编指令?

今天在网上看到这样一个帖子,将机器码“B0 13 CD 10 C4 2F AA 14 01 EB FB”用UE编成16进制文本,另存为.com文件,双击后运行效果是这样的http://www.vbgood.com/data/attachment/forum/month_0808/1_RytajIiTv27q.jpg
的确可以看到效果,
然后我想把这段机器码专为汇编指令,在debug中输入-e 1000:0 B0 13 CD 10 C4 2F AA 14 01 EB FB 改写内存 然后用-u 1000:0 10得到的汇编指令是这样的
        mov al,13h
        int 10h
        les bp,
        stosb
        adc al,01h
        jmp 0006h
        sti
        add ,al
        add ,al
        add ,al

于是乎写了一个汇编程序

assume cs:code
code segment
        mov al,13h
        int 10h
        les bp,
        stosb
        adc al,01h
        jmp 0006h
        sti
        add ,al
        add ,al
        add ,al
code ends
end
保存为1.asm用ml工具编译连接会报个错“1.asm<8>:error a2076”
请问大侠有啥好的解决方案,是不能这样编代码还是怎么回事,我是汇编新手,求教,谢谢!!

莫名其妙 发表于 2012-3-16 20:26:06

本帖最后由 莫名其妙 于 2012-3-16 20:30 编辑

jmp 0006h 改成

mov dx,0006h
jmp dx
编译通过

运行结果是全屏然后 跟你那个一样

u654f 发表于 2012-3-16 20:31:47

莫名其妙 发表于 2012-3-16 20:26 static/image/common/back.gif
jmp 0006h 改成

mov dx,0006h


是的啊!谢谢啊!就是这效果,直接jmp 不行啊?

u654f 发表于 2012-3-16 20:39:11

莫名其妙 发表于 2012-3-16 20:26 static/image/common/back.gif
jmp 0006h 改成

mov dx,0006h


大侠,给你看一段代码
e100 B0 13 CD 10 C4 2F AA 14 01 EB FB
g
rcx
fff
n1.com
w
q
把这代码保存到1.txt文件中然后在dos命令中debug<1.txt也能达到这种效果,
他后面的
g
rcx
fff
n1.com
w
q
是啥意思啊?

莫名其妙 发表于 2012-3-17 11:12:25

u654f 发表于 2012-3-16 20:39 static/image/common/back.gif
大侠,给你看一段代码
e100 B0 13 CD 10 C4 2F AA 14 01 EB FB
g


这个 我也不懂但是在网上百度了下 貌似可以反编译出对应指令 你可以试试当然我也是新手而且不会反编译
页: [1]
查看完整版本: 求教,如何将机器码转化为汇编指令?