没事做了2到其他进制的进制转换(勿黑)

u014519174 2014-04-02 10:07:30
2到8

data segment
input db 10,?,10 dup(?) ;可输入8个二进制
data ends

code segment
assume ds:data,cs:code
start:
mov dx,offset input
mov ah,10
int 21h

mov dl,0ah
mov ah,2
int 21h
mov dl,0dh
mov ah,2
int 21h

mov bx,2
mov cx,2
mov dl,0
lop:
mov al,offset input[bx]
rcr al,1
rcl dl,1
inc bx
loop lop
add dl,30h
mov ah,2
int 21h
mov cx,2
lop1:
push cx
mov cx,3
mov dl,0
lop2:
mov al,offset input[bx]
rcr al,1
rcl dl,1
inc bx
loop lop2
add dl,30h
mov ah,2
int 21h
pop cx
loop lop1

mov ah,4ch
int 21h
code ends
end start

2到10

data segment
input db 10,?,10 dup(?) ;可输入8位2进制
data ends
code segment
assume ds:data,cs:code
start:
mov dx,offset input
mov ah,10
int 21h

mov dl,0ah
mov ah,2
int 21h
mov dl,0dh
mov ah,2
int 21h

mov bx,9
mov cx,8
lop:
mov si,cx
mov cx,9
mov dx,1
mov al,offset input[bx]
shr al,1
jnc bsh
sub cx,bx
shl dl,cl
add di,dx
bsh:
dec bx
mov cx,si
loop lop

mov ax,di
mov dx,0
cmp ax,1000
jae sq
mov bx,100
div bx
jmp tg
sq:
mov bx,1000
div bx
jmp gg
tg:
xchg ax,dx
add dl,30h
push ax
mov ah,2
int 21h
mov dx,0
pop ax
mov bx,10
div bx
xchg ax,dx
add dl,30h
push ax
mov ah,2
int 21h
pop ax
mov dx,ax
add dl,30h
mov ah,2
int 21h
jmp exit
gg:
xchg ax,dx
add dl,30h
push ax
mov ah,2
int 21h
mov dx,0
pop ax
mov bx,100
div bx
xchg ax,dx
add dl,30h
push ax
mov ah,2
int 21h
mov dx,0
pop ax
mov bx,10
div bx
xchg ax,dx
add dl,30h
push ax
mov ah,2
int 21h
pop ax
mov dx,ax
add dl,30h
mov ah,2
int 21h

exit:
mov ah,4ch
int 21h
code ends
end start

2到16

data segment
input db 10,?,10 dup(?) ;shu ru 8 wei
data ends

code segment
assume ds:data,cs:code
start:
mov dx,offset input
mov ah,10
int 21h

mov dl,10
mov ah,2
int 21h
mov dl,13
mov ah,2
int 21h

mov bx,2
mov cx,2
lop:
mov dl,0
push cx
mov cx,4
lop1:
mov al,offset input[bx]
rcr al,1
rcl dl,1
inc bx
loop lop1
cmp dl,9h
ja dxzm
add dl,30h
jmp tg
dxzm:
add dl,37h
tg:
mov ah,2
int 21h
pop cx
loop lop

mov ah,4ch
int 21h
code ends
end start

...全文
245 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
fhqdx0012 2014-06-02
  • 打赏
  • 举报
回复
稍微麻烦了些 还可以简化些 转8进制与转16进制要比转10进制简单的多
大熊猫侯佩 2014-06-02
  • 打赏
  • 举报
回复
亲,请加上注释
zara 2014-04-03
  • 打赏
  • 举报
回复
不可以发 0 分贴的吗?以前好像是可以的。

21,499

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧