"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.300 ]
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; }
Retorna a diferença entre dois vetores em Assemly
Retorna o maior elemento de um vetor
Escrita de um número em octal na tela em Assembly Puro para Linux x86 (GNU Assembly)
Como gerar um podcast a partir de um livro em PDF
Automatizando digitação de códigos 2FA no browser
Resolver problemas de Internet
Como compartilhar a tela do Ubuntu com uma Smart TV (LG, Samsung, etc.)
Conheça a 4Devs, caixa de ferramentas online para desenvolvedores
Como converter um vídeo MP4 para um GIF para publicar no README.md do seu repositório Github
Como Instalar o Microsoft Teams no Linux Ubuntu