Publicado por Listeiro 037 em (última atualização em 01/04/2013) [ 3418 hits ]
Login: Listeiro 037, 195718 pontos
Publicado por Listeiro 037 em 31/07/2012
Changelog: Este método de escrita não usa mais a string com os caracteres a serem usados na impressão.
É feita normalmente a sequência de divisões por 10 e acumulados os restos para impressão de caracteres.
Ao invés disso os caracteres são colocados diretamente na pilha.
Daí o endereço da pilha com o caracter é enviado ao registrador para ser usado na impressão de um único caracter.
Sendo repetido isto em loop, até ser encontrado por comparação o valor que identifica o final da série de caracteres, que é o ' \ 0 ', o mesmo da linguagem C.
Publicado por Listeiro 037 em 28/02/2013
Changelog: Este versão de código, semelhante à versão de número 3, coloca os caracteres diretamente na pilha.
Nas duas versões anteriores, os caracteres eram desempilhados e impressos um a um por loop.
Aqui neste caso, quando a interrupção para a escrita é chamada, ao invés dos caracteres serem escritos um a um na tela, é passada para a interrupção um endereço de valor inicial dos caracteres na pilha (esp) e a quantidade total de caracteres que foram empilhados.
Deste modo são impressos todos os caracteres de uma só vez.
Escrita de um número em hexadecimal na tela em Assembly Puro para Linux x86 (Nasm - Netwide Assemble
Escrita de um número em hexadecimal na tela em Assembly Puro para Linux x86 (GNU Assembly)
Árvore binária de busca em Assembler 8086
Fatorial de N em Assembly
Escrita de um número em binário na tela em Assembly Puro para Linux x86 (GNU Assembly)