Escrita de um número em hexadecimal na tela em Assembly Puro para Linux x86 (GNU Assembly)

Publicado por Perfil removido (última atualização em 15/04/2013)

[ Hits: 6.778 ]

Download hexadecimal001.s




Método semelhante à da escrita em decimal do outro código.

A diferença é a de trocar a string dos caracteres de escrita decimal "0123456789" pela string dos caracteres de escrita em hexadecimal "0123456789abcdef".

E trocar o valor do divisor, que é 10, por 16.

  



Esconder código-fonte

############################################################################################
#      Comentários:
############################################################################################
#
#    as hexadecimal001.s -o hexadecimal001.o
#    ld -s hexadecimal001.o -o hexadecimal001
#    a opção -s no linkeditor faz 
#     "strip -s" automaticamente
#
############################################################################################

.section      .rodata

   digit:   .ascii   "0123456789abcdef"
   nl:   .ascii   "\n"
   valor:   .long   4952488

.section   .text         
.globl       _start         

_start:   

   pushl   $nl
   movl   valor,   %eax

_empilha:

   xorl    %edx,   %edx
   movl   $16,   %ecx
   divl   %ecx
   addl   $digit,   %edx
   pushl   %edx
   cmpl    $0,    %eax
   jg    _empilha

_escreve:

   movl    $4,    %eax         
   movl    $1,    %ebx         
   popl    %ecx
   movl    $1,    %edx
   int    $0x80

   cmpl   $nl,   %ecx
   jne   _escreve

_fim:

   movl    %eax,    %ebx
   movl    $1,    %eax
   int    $0x80

Scripts recomendados

GAS Informações da CPU

Escrita de um número em octal na tela em Assembly Puro para Linux x86 (GNU Assembly)

Escrita de um número em octal na tela em Assembly Puro para Linux 64 bits (GNU Assembler)

Expressão matemática em C

Assembler 8086 - Simples código que mostra horas e minutos em pontos


  

Comentários
[1] Comentário enviado por tiekookeit em 12/07/2012 - 14:35h

nerdisse total kkkkkk


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts