assume cs:code
code segment
start: mov ax,0b800H
mov es,ax
s: mov bx,160*12+35*2
mov byte ptr es:[bx+4],"/"
mov byte ptr es:[bx+10],"/"
mov byte ptr es:[bx+22],":"
mov byte ptr es:[bx+28],":"
mov cl,9
s1: mov al,cl
cmp al,6
je s3
cmp al,5
je s3
cmp al,3
je s3
cmp al,1
je s3
call get
call show
xor al,al
add bx,6
s3: dec cl
cmp cl,0ffh
je S
jmp s1
get: push cx
out 70H,al
in al,71H
mov ah,al
mov cl,4
shr ah,cl
and al,00001111b
add ah,30H
add al,30H
pop cx
ret
show:
mov byte ptr es:[bx],ah
mov byte ptr es:[bx+2],al
ret
code ends
end start
- [smasm] assume cs:code,es:data,ss:stack,ds:table data 11/14 17:37
- [smasm] 看到论坛中有人判断ax,dx中是否为0的方法很有技巧、很好很强大,代码如下: mo 11/14 09:27
- [smasm] 原来真是我错了,那条指向是EBF6 向上跳10个字节,不是8个,还有自身的两个字节。 11/07 15:50
- [fpamc] 对的。 11/03 12:04
- [fpamc] 对的。 11/03 11:48
- [smasm] 我太粗心了!^_^ 11/01 10:38
- [fpamc] 对的 10/31 19:47
- [fpamc] 对的 10/31 19:44
- [游客] (3)返回前 cs:13fa,ds:13fd,ss:13fe code段为X则data段为X+3 10/31 18:57
- [smasm] 那少加了1??? 10/30 21:37