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.303 ]
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
codigo em assembley que soma dois numeros
Árvore binária de busca em Assembler 8086
Retorna a diferença entre dois vetores em Assemly
Escrita de número em binário em Assembly Puro para Linux 64 bits (Nasm - Netwide Assembler)
Nenhum comentário foi encontrado.
Programa IRPF - Guia de Instalação e Resolução de alguns Problemas
Criando uma Infraestrutura para uma micro Empresa
Criar entrada (menuentry) ISO no Grub
Como gerar qualquer emoji ou símbolo unicode a partir do seu teclado
Instalando o Pi-Hole versão v5.18.4 depois do lançamento da versão v6.0
Instalar o VIM 9.1 no Debian 12
Como saber o range de um IP público?
Muitas dificuldades ao instalar distro Linux em Notebook Sony Vaio PCG-6131L (VPCEA24FM)
Problema no boot do Linux Mint Cinnamon 22 (3)
Atualização do Google Chrome do Ubuntu [RESOLVIDO] (2)
Instalei Windows 11 e não alterou o Grub do Debian (1)
Jogos baixados na Central de Aplicativos mas que não abrem (0)