您的位置:首页 > 其它

实训汇编语言设计——将bcd码转化为二进制数

2007-12-21 14:32 393 查看
将bcd码转化为二进制数

data segment
bcd db 1,2,3,4,5    ;bcd码
a   dw ?              ; 用于存放bcd码转化后的十六进制数
data ends
stack segment para stack'stack'
 stapn dw 50 dup(?)
stack ends
 
code segment
 main proc far
 assume ds:data,cs:code,ss:stack
start: 
 ;set up stack to retuan
   
   
    ;set DS register to current segment
    mov ax,data
    mov ds,ax
    mov ax,stack
    mov ss,ax
   
    ;maim part of the code goes here
   call convert            ;调用子程序
   mov a,bx
   ret
   main endp
  
  
   convert proc near
    push si
    push cx
    push ax
    mov si,4
  l1:mov al,bcd[si]
    cbw
    ;digit is now in ax
    ;multiply number in bx by 10 decimal
    xchg ax, bx
    mov cx,10d
    mul cx
    xchg ax,bx
    ;Add digit in ax to number in bx
    add bx,ax
    dec si
    jnz l1
    pop ax
    pop cx
    pop si
exit:mov ah,4ch
     int 21h
convert endp
 
  
 code ends
 
    end start             
       
      
               
         
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  汇编 语言 up