"Clear Screen" para Linux x86 com Inline Assembly (embutido no código) em C
Publicado por Perfil removido (última atualização em 11/05/2012)
[ Hits: 5.257 ]
Esta função dentro deste código realiza o mítico "clear screen" em ANSI C.
Uma chamada de interrupção de kernel para imprimir uma sequência de escape de terminal que limpe o código.
Nenhum segredo para compilar. Apenas uso simples do GCC.
#include <stdio.h> void clrscr(void); void clrscr(void){ const char *_CLRSCR_ = "{FONTE}33c{FONTE}"; const int _$CLRSCR_ = sizeof(_CLRSCR_); int _RET_; asm __volatile__("movl $4, %%eax\n\t" // interrupcao 4 "movl $1, %%ebx\n\t" // saida "movl %1, %%ecx\n\t" // _CLRSCR_ "movl %2, %%edx\n\t" // _$CLRSCR_ "int $0x80" // chamada ao kernel : "=a"(_RET_) // (output) armazena o retorno do codigo do que houve : "g"(_CLRSCR_), "g"(_$CLRSCR_) // (input) entrada dos valores para os registradores : "%ebx", "%ecx", "%edx", "%esi", "%edi" ); return; } int main (void) { clrscr(); return 0; }
Algoritmo de Raiz Quadrada Inteira em Assembly Puro para Linux x86 (NASM - Netwide Assembler)
Escrita de um número em binário na tela em Assembly Puro para Linux x86 (GNU Assembly)
Retorna o maior elemento de um vetor
Escrita de um número em hexadecimal na tela em Assembly Puro para Linux x86 (GNU Assembly)
Instalar e Configurar o Slackware Linux em 2025
Como configurar os repositórios do apt no Debian 12 em 2025
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Configurando o Conky para iniciar corretamente no sistema
3 configurações básicas que podem melhorar muito a sua edição pelo editor nano
Como colorir os logs do terminal com ccze
Instalação Microsoft Edge no Linux Mint 22
Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
Linux Mint limitando rede a 20Mbps (6)
Jogando com Proton no LInux (0)
Ingress NGINX Controller CVSS base score of 9.8 (4)
Impossível corrigir problemas, você manteve (hold) pacotes quebrados. (2)