水铝英石

微机原理作业2

;3
data segment
    data1 db 'asdfdkfFOCNeko'
    length equ $-data1
data ends
code segment
    assume cs:code,ds:data,ss:stack,es:data
start:  mov ax,data
        mov ds,ax
        mov cx,length
        lea si,data1
        mov al,[si]

        call trans
        
        mov ah,4ch
        int 21h
        
trans proc
    push si
    push ax
    push cx
lp:
    cmp al,61h
    jb next
    cmp al,7ah
    ja next
    sub al,20h
    mov [si],al
next:
    inc si
    mov al,[si]
    loop lp
return:
    pop cx
    pop ax
    pop si
    ret
trans endp
code ends
    end start
;7
data segment
    valu db 6    ;8
    result db 0
data ends
code segment
    assume cs:code,ds:data,ss:stack
start:  mov ax,data
        mov ds,ax
    mov ax,1
    mov bx,1
    mov cl,valu
    cmp cl,2
    jb exit1
    call fib
    jmp exit
exit1: 
    mov ax,1
exit:
    mov result,al
    mov ah,4ch
    int 21h
        ;ax作为n-1,bx作为n-2
        ;cx代表
fib proc
    push cx
    cmp cl,2
    ja next_layer
    jmp return
next_layer:
    dec cx
    call fib
    add bx,ax
    xchg ax,bx
return:
    pop cx
    ret
fib endp
code ends
    end start

发表评论

邮箱地址不会被公开。 必填项已用*标注

滚动到顶部