1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Programa em Assembly

Discussão em 'Programação' iniciada por Myself*, 1 de Dezembro de 2007. (Respostas: 2; Visualizações: 698)

  1. Myself*

    Myself* Power Member

    segment data
    cadeia dw 'abcdefghijlmnopqrst0'
    caractere db 'e'
    contador db 0
    i db 0

    segment code
    ..start:
    mov ax, data
    mov ds, ax
    mov ax, [caractere]
    mov bx, [cadeia]
    mov cx,
    mov dx, [contador]

    ciclo: cmp bl, 0
    je fim

    cmp bl, al
    je inc
    jmp ninc
    inc: call incrementa
    ninc: cmp bh, 0
    je fim

    cmp bh, al
    je inc2
    jmp ninc2
    inc2: call incrementa
    ninc2: add cx, 2
    mov bx, [cadeia+cx]
    jmp ciclo

    incrementa
    add dx, 1
    ret

    fim: mov [contador], dx

    mov ah, 4ch
    int 21h


    Como explico as instruções, deste programa? Ideias... Não consigo perceber Assembly e tb não encontro tutoriais sobre isto. Penso que este programa diz respeito á contagem da ocorrência de um dado carácter numa cadeia com 20 caracteres e que termina em 0, mas não tenho a certeza. Tenho k comentar cada uma das etapas do programa. Alguem me ajude...
     
    Última edição pelo moderador: 2 de Dezembro de 2007
  2. r3pek

    r3pek Power Member

    por acaso não tas à espera k te façam a papinha toda não?
     
  3. floyd

    floyd [email protected] Member

Partilhar esta Página