Algoritmo de Raiz Quadrada Inteira em Assembly Puro para Linux x86 (GNU Assembler)
Publicado por Perfil removido (última atualização em 01/08/2012)
[ Hits: 6.430 ]
Algoritmo de obtenção de raiz quadrada inteira em assembly puro para Linux.
Sem uso de alguma instrução para a operação ou algoritmo iterativo que necessite de valores de ponto flutuante.
############################################################################################ # Comentários: ############################################################################################ # # as raizquadrada001.s -o raizquadrada001.o # ld -s raizquadrada001.o -o raizquadrada001 # a opção -s no linkeditor faz "strip -s" automaticamente # ############################################################################################ .section .rodata valor: .long 4097 .section .text .globl _start _start: movl valor, %ebx xorl %ecx, %ecx _separa: movl %ebx, %eax andl $0x03, %eax pushl %eax incl %ecx shrl $0x02, %ebx cmpl $0x00, %ebx jg _separa xorl %eax, %eax xorl %ebx, %ebx _raiz: popl %edx shll $0x02, %ebx addl %edx, %ebx shll $0x01, %eax movl %eax, %edx shll $0x01, %edx incl %edx cmpl %edx, %ebx jl _zero subl %edx, %ebx addl $0x01, %eax _zero: decl %ecx cmpl $0x00, %ecx jg _raiz pushl $0x0a xorl %ebx, %ebx movl $4, %ebx _empilha: xorl %edx, %edx movl $10, %ecx divl %ecx addl $0x30, %edx pushl %edx addl $4, %ebx cmpl $0, %eax jg _empilha _escreve: movl %ebx, %edx movl %esp, %ecx movl $1, %ebx movl $4, %eax int $0x80 _fim: popl %eax addl %eax, %esp xorl %ebx, %ebx movl $1, %eax int $0x80
Retorna o maior elemento de um vetor
Escrita de um número em binário na tela em Assembly Puro para Linux x86 (GNU Assembly)
Escrita de um número em decimal na tela em Assembly Puro para Linux x86 (GNU Assembler)
Calculadora em C com Assembly (multiplataforma)
Nenhum comentário foi encontrado.
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Ativando e usando "zoom" no ambiente Cinnamon
Vídeo Nostálgico de Instalação do Conectiva Linux 9
Como realizar um ataque de força bruta para desobrir senhas?
Aderencia a Obsolencia Programada. (2)
Não consigo criar pasta em um HD secundário. [RESOLVIDO] (0)
Jogos baixados na Central de Aplicativos mas que não abrem (2)









