"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.085 ]
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; }
Crivo de Eratóstenes Simples para Linux x86 em Assembly Puro (GNU Assembler)
Assembler 8086 - Simples código que mostra horas e minutos em pontos
Simples JIT (just in time) em C
Atenção a quem posta conteúdo de dicas, scripts e tal (2)
Manutenção de sistemas Linux Debian e derivados com apt-get, apt, aptitude e dpkg
Melhorando o tempo de boot do Fedora e outras distribuições
Como instalar as extensões Dash To Dock e Hide Top Bar no Gnome 45/46
Como Atualizar Fedora 39 para 40
Instalar Google Chrome no Debian e derivados
Consertando o erro do Sushi e Wayland no Opensuse Leap 15
Instalar a última versão do PostgreSQL no Lunix mantendo atualizado
Flathub na sua distribuição Linux e comandos básicos de gerenciamento
ASRock H310CM-HG4 vs Linux [RESOLVIDO] (18)
Microfone do meu headset não é recinhecido. Meu notebook é um Acer Asp... (12)