永发信息网

汇编高手 解释一下这个程序世界编程大赛一等奖作品

答案:5  悬赏:40  手机版
解决时间 2021-02-24 13:30
e100 33 f6 bf 0 20 b5 10 f3 a5 8c c8 5 0 2 50 68 13 1 cb e 1f be a1 1 bf 0 1
e11b 6 57 b8 11 1 bb 21 13 89 7 4b 4b 48 79 f9 ad 86 e0 8b c8 bd ff ff e8 20
e134 0 3d 0 1 74 1a 7f 3 aa eb f3 2d ff 0 50 e8 f 0 5a f7 d8 8b d8 26 8a 1 aa
e14f 4a 75 f9 eb de cb 57 bb 21 13 8b c1 40 f7 27 f7 f5 8b fb ba 11 1 4f 4f 4a
....................................................................
e10b8 99 2f ac 33 4d fa 58 3a 5a a a4 1a 74 62 c8 4f 3b 78 9 d7 ee 7e ee 2d 69
e10d1 30 40 ea 47 82 3b 85 8e 3 23 8f 74 4e 8 35 ab 74 4 1 57 d5 85 b1 6b 1e
e10ea f4 7d 1e d2 1e b3 fe f3 12 10 32 39 51 48 2d 6f e5 d3 a3 8c 8 8

g
rcx
fff
n1.com
w
q

把着段代码复制下来存为文本文档,命名为asm

在DOS下用debug
生成一个可执行程序。

进去是一个3D游戏的旋转界面,还有一段美妙的音乐,真是牛!!!
快去看看吧。

请详细解释一下 ,就好 选一个句子解释 多谢
最佳答案
前几段是三次变码,然后对图块进行浮点计算,在320*200的13H图形模式下,
顺序显示。解压出来的COM文件约5K,结尾处为:MNISCENT(C) 1997 SANCTION。
上面的的部分代码反编译为:
.386
.model tiny
code segment byte public 'CODE' use16

org 100h
assume cs:code,ds:code
public start
start proc far
xor si, si
mov di, 2000h
mov ch, 10h
rep movsw ;这几句将自身(含PSP)2000字节搬到CS:2000H处
mov ax, cs
add ax, 200h
push ax
push 113h
retf;修改CS:IP为(CS+200H):0113H
push cs
pop ds
mov si, 1A1h
mov di, 100h
push es
push di
mov ax, 111h
mov bx, 1321h

loc_123:
mov [bx], ax
dec bx
dec bx
dec ax
jns short loc_123
lodsw
xchg ah, al
mov cx, ax
mov bp, 0FFFFh

loc_132:
call sub_155
cmp ax, 100h
jz short locret_154
jg short loc_13F
stosb
jmp short loc_132

loc_13F:
sub ax, 0FFh
push ax
call sub_155
pop dx
neg ax
mov bx, ax

loc_14B:
mov al, es:[bx+di]
stosb
dec dx
jnz short loc_14B
jmp short loc_132

locret_154:
retf
start endp

sub_155 proc near
push di
mov bx, 1321h
mov ax, cx
inc ax
mul word ptr [bx]
div bp
mov di, bx
mov dx, 111h

loc_165:
dec di
dec di
dec dx
cmp [di], ax
jg short loc_165
push dx
mov ax, bp
mul word ptr [di]
div word ptr [bx]
sub cx, ax
xchg ax, bp
mul word ptr [di+2]
div word ptr [bx]
xchg ax, bp
sub bp, ax

loc_17E:
dec byte_10FE
jns short loc_18A
mov byte_10FE, 7
inc si

loc_18A:
rcl byte ptr [si], 1
rcl cx, 1
shl bp, 1
jns short loc_17E
pop dx
mov ax, 111h

loc_196:
inc word ptr [bx]
dec bx
dec bx
dec ax
cmp dx, ax
jnz short loc_196
pop di
retn
sub_155 endp
;以下部分为加密代码,反编译无意义。
db 83h, 0F7h, 83h, 0A6h, 5Dh, 59h, 82h, 0CDh
... ...
code ends
end start
全部回答
以上代码只不过是对一段动画反汇编的结果,编程并不真正是这样的。如果对别的动画反汇编,也会出现类似的代码。 没有人能直接徒手写出机器码来的.
他说的很对,上述是16进制码,是反汇编的结果,真正的汇编格式如下 org 0000h mov A add A 等等。。。。 应该说狠狠少人能直接徒手写出机器码来的。一切皆有可能。
还是可以弄的吧,比如你用16进制编辑工具ultraedit打开一个程序,看到就是16进制的形式,第一个想到这么做,并且把他做出来的肯定是比较牛的。我对DEBUG这个程序不了解。
在g前加上 u 100 lfff 执行debugprog.txt 执行后 prog.txt 里会记下反汇编的代码
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
五月份哪天适合结婚
德青源生态园南门这个地址在什么地方,我要处
怎么看自己家庭网络ip地址是多少
QQ飞车图标等级不是80级就能达到图标四级。。
时光品读地址有知道的么?有点事想过去
现在的传递方式和以前的有什么不同
自制固体水彩风干多少天
在vb中如何在及时窗口中显示运行效果如图
琴心剑胆纵江湖,下一句?
sj李东海到底比崔始源大还是小?
淘宝付款时是找他人代付的,那申请退款时资金
I'm,thanks,OK(.)连词成句
大一了英语英标都不会该怎么学英语,求推荐几
笔记本 联想 三星 华硕 东芝 宏基 这几个哪种
手机下了一个91桌面,但是手机最上方状态栏怎
推荐资讯
【的挑战】这对我们来说是一个巨大的挑战用英
左眉毛最右端长出一根泛黄有点粗的眉毛,请问
睢阳区商丘阳光人寿保险集团怎么去啊,谁知道
对闹钟有了免疫力怎么办?
开封清明上河园任何时候都有大型表演么?
方圆塑胶有限责任公司在什么地方啊,我要过去
玫瑰和蔷薇的区别?为什么玫瑰的英文Rose是蔷
桐乡市石门易联天翼卖场在什么地方啊,我要过
长在树皮上的虫子吃什么呀
完美时刻芦荟胶乳液去哪儿买?什么价位?
25.12比37.68化简比
还有涟漪的读音,写得越长越好
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?