- [mywiil] 可以看看别人的程序处理思路,把属性定义成一个数据段。那样处理起来更好更合理。 08/21 03:36
- [mywiil] 没问题。 08/21 03:31
- [mywiil] OK。加油。 08/21 03:28
- [mywiil] 嗯哪。 08/21 03:28
- [mywiil] 恩,没问题,但是结果首先要自己先的出来,然后,在运行验证,反了就没意义咯 08/21 03:24
- [masmaster] NB~~~ 08/13 21:38
- [masmaster] 咋就一个蛋蛋啦? 08/11 10:11
- [masmaster] 好新鲜的水果呀~~~(¯﹃¯)~~~ 08/09 13:49
- [masmaster] good~~~ 08/07 22:53
- [mess] 正确。 08/06 10:28
- [masmaster] 没有呀! 08/13 22:44
- [游客] 只有板凳了...希望有一天能热泪庆祝来访人数过万...啊哈... 08/09 18:50
- [masmaster] 你的博客真好玩 08/07 17:08
[2010-08-26 09:07] 实验十(第三个)调了很久。。。95行
assume cs:code,ds:data
data segment
db 10 dup(0)
data ends
code segment
start:mov ax,12666
mov bx,data
mov ds,bx
mov si,0
call dtoc
s2: mov dh,8
mov dl,3
mov cl,2
call show_str
mov ax,4c00h
int 21h
dtoc: push ax
push cx
push dx
push si
change_1:mov cx,10 ;设置除数
mov dx,0 ;把dx清零,好调用dividw
call divdw
jcxz ok_1 ;余数为0时,结束循环
add cx,30h
mov [si],cl
push [si]
inc si
jmp short change_1
ok_1 :
mov cx,si
mov si,0
s_2:pop [si]
inc si
loop s_2
pop si
pop dx
pop cx
pop ax
jmp s2
divdw: ;防止除法溢出的函数
mov bx,ax
mov ax,dx
mov dx,0
div cx
push ax
mov ax,bx
div cx
mov cx,dx
pop dx
ret
show_str: ;显示字符的函数
push si
push ax
push bx
push cx
push dx
mov ax,0b800h
mov es,ax
mov bx,0
mov di,0
mov al,160
mul dh
add bx,ax
mov al,2
mul dl
add bx,ax
mov dl,cl
change:
mov cl,[si]
mov ch,0
jcxz ok
mov al,[si]
mov es:[bx+di],al
mov es:[bx+di+1],dl
add di,2
inc si
jmp short change
ok:pop dx
pop cx
pop bx
pop ax
pop si
ret
code ends
end start
data segment
db 10 dup(0)
data ends
code segment
start:mov ax,12666
mov bx,data
mov ds,bx
mov si,0
call dtoc
s2: mov dh,8
mov dl,3
mov cl,2
call show_str
mov ax,4c00h
int 21h
dtoc: push ax
push cx
push dx
push si
change_1:mov cx,10 ;设置除数
mov dx,0 ;把dx清零,好调用dividw
call divdw
jcxz ok_1 ;余数为0时,结束循环
add cx,30h
mov [si],cl
push [si]
inc si
jmp short change_1
ok_1 :
mov cx,si
mov si,0
s_2:pop [si]
inc si
loop s_2
pop si
pop dx
pop cx
pop ax
jmp s2
divdw: ;防止除法溢出的函数
mov bx,ax
mov ax,dx
mov dx,0
div cx
push ax
mov ax,bx
div cx
mov cx,dx
pop dx
ret
show_str: ;显示字符的函数
push si
push ax
push bx
push cx
push dx
mov ax,0b800h
mov es,ax
mov bx,0
mov di,0
mov al,160
mul dh
add bx,ax
mov al,2
mul dl
add bx,ax
mov dl,cl
change:
mov cl,[si]
mov ch,0
jcxz ok
mov al,[si]
mov es:[bx+di],al
mov es:[bx+di+1],dl
add di,2
inc si
jmp short change
ok:pop dx
pop cx
pop bx
pop ax
pop si
ret
code ends
end start
评论次数(0) |
浏览次数(813) |
类型(汇编作业) |
收藏此文 |