Unconfigured Ad Widget

Collapse

Anúncio

Collapse
No announcement yet.

ajuda com emu8086

Collapse
X
 
  • Filter
  • Tempo
  • Show
Clear All
new posts

  • Font Size
    #1

    ajuda com emu8086

    pessoal to fazendo um exercicio com o emu8086 e tenho duvidas com o exercico, não tenho nem ideia de como faze, as questões são:
    1 Carrege o exemplo “calc-sum”, rode-o passo a passo e responda:
    1.1 Como ocorre a soma dos valores? Quais são os valores somados?
    Como os mesmos são endereçados?
    1.2 Explique o funcionamento da interrupção 021h. Qual sua função neste
    código e como a mesma é definida?
    e o codigo é esse

    name "calc-sum"

    org 100h ; directive make tiny com file.

    ; calculate the sum of elements in vector,
    ; store result in m and print it in binary code.

    ; number of elements:
    mov cx, 5

    ; al will store the sum:
    mov al, 0

    ; bx is an index:
    mov bx, 0

    ; sum elements:
    next: add al, vector[bx]

    ; next byte:
    inc bx

    ; loop until cx=0:
    loop next


    ; store result in m:
    mov m, al


    ; print result in binary:
    mov bl, m
    mov cx, 8
    print: mov ah, 2 ; print function.
    mov dl, '0'
    test bl, 10000000b ; test first bit.
    jz zero
    mov dl, '1'
    zero: int 21h
    shl bl, 1
    loop print
    ; print binary suffix:
    mov dl, 'b'
    int 21h



    mov dl, 0ah ; new line.
    int 21h
    mov dl, 0dh ; carrige return.
    int 21h


    ; print result in decimal:
    mov al, m
    call print_al




    ; wait for any key press:
    mov ah, 0
    int 16h



    ret

    ; variables:
    vector db 5, 4, 5, 2, 1
    m db 0


    print_al proc
    cmp al, 0
    jne print_al_r
    push ax
    mov al, '0'
    mov ah, 0eh
    int 10h
    pop ax
    ret
    print_al_r:
    pusha
    mov ah, 0
    cmp ax, 0
    je pn_done
    mov dl, 10
    div dl
    call print_al_r
    mov al, ah
    add al, 30h
    mov ah, 0eh
    int 10h
    jmp pn_done
    pn_done:
    popa
    ret
    endp

    desde já eu agradeço
    valeu

  • Font Size
    #2
    não to t entendendo direito. Mas qual é a dificuldade? Compila e depois abre ele no Olly por exemplo e já era. Pelo pouco que sei de ASM é isso, vai dando step over e ve como ocorre as coisas, ou estou enganado?

    Comment


    • Font Size
      #3
      sim, eh isso mesmo i fazendo passo a passo e responder as questaoes, eu nao to conseguindo responde a questao 2 a um ja fiz hoje

      Comment


      • Font Size
        #4
        tentei compila aqui pra te ajuda mas deu erro, o seu nao deu ?

        Comment


        • Font Size
          #5
          no meu não deu erro não, esse programa já vem nos exemplos do emu8086
          ali onde eu colei o codigo os ';' sao comentarios.

          Comment

          X
          Working...
          X