532628838
圣骑士
圣骑士
  • 注册日期2011-06-10
  • 发帖数98
  • QQ
  • 火币517枚
  • 粉丝77
  • 关注39
阅读:3032回复:0

基础汇编试题

楼主#
更多 发布于:2011-08-01 16:32
一个基础的汇编例题,要求用汇编语言实现R<-X+Y-3
    其中R·X·Y都是字数组,要求X,Y放在D_SEG段,R放在E_SEG段  
D_SEG segment  
    x dw 200,241,308,102,1247  
    y dw 20,25,2530,888,356  
D_SEG ends  
E_SEG segment  
    r dw 5 dup(?)  
E_SEG ends  
datagroup group D_SEG,E_SEG  
code segment  
    assume cs:code,ds:datagroup  
main proc far  
    mov ax,datagroup  
    mov ds,ax  
    call compute  
    mov ax,4c00h      
    int 21h  
main endp  
compute proc near  
    mov cx,5  
    mov si,0  
next:  
    mov ax,x[si]  
    add ax,y[si]  
    sub ax,3  
    mov r[si],ax  
    add si,2  
    loop next  
    mov cx,5  
    add di,0  
net:  
    mov bx,r[di]  
    push cx  
    call put  
    call crlf  
    add di,2  
    pop cx  
    loop net  
    ret  
compute endp  
put proc near  
    mov cx,10000d  
    call output  
    mov cx,1000d  
    call output  
    mov cx,100d  
    call output  
    mov cx,10d  
    call output  
    mov cx,1d  
    call output  
    ret  
put endp  
output proc near  
    mov ax,bx  
    mov dx,0  
    div cx  
    mov bx,dx  
    mov dl,al  
    add dl,30h  
mov ah,2  
    int 21h  
    ret  
output endp  
crlf proc near  
    mov dl,0ah  
    mov ah,2  
    int 21h  
    mov dl,0dh  
    mov ah,2  
    int 21h  
    ret  
crlf endp  
code ends  
end main


喜欢0 评分0
游客

返回顶部