hackiy 发表于 2012-5-25 04:37:50

自认实验5(5)和实验5(6)最优参考答案

缘由是:鄙人刚学完第6章,发现官方未放出 实验5后两题的参考。
如有不对,请各位高手指出。

实验5(5)assume cs:code

aa segment
db 1,2,3,4,5,6,7,8
aa ends

bb segment
db 1,2,3,4,5,6,7,8
bb ends

cc segment
db 0,0,0,0,0,0,0,0
cc ends

code segment
start:        mov ax,aa
                mov es,ax

                mov ax,bb
                mov ss,ax

                mov ax,cc
                mov ds,ax

                sub ax,ax
                mov bx,0h
                mov cx,8
                s:        mov al,es:
                        add al,ss:
                        mov ,al
                        inc bx
                loop s
               
over:        mov ax,4c00h
                int 21h
code ends
end start5(6)assume cs:code

a segment
dw 1,2,3,4,5,6,7,8,9,0ah,0bh,0ch,0dh,0eh,0fh,0ffh
a ends

b segment
dw 0,0,0,0,0,0,0
b ends

code segment
start:        mov ax,a
                mov ds,ax

                mov ax,b
                mov ss,ax
                mov sp,16

                sub bx,bx
                mov cx,8
                s:        push
                        add bx,2
                loop s
               
over:        mov ax,4c00h
                int 21h
code ends
end start

BigChang 发表于 2012-6-21 22:14:35

add bx,2 用inc bx inc bx代替,可以节省一个字节。掌握这个技巧,编写shellcode时非常有用
页: [1]
查看完整版本: 自认实验5(5)和实验5(6)最优参考答案