Enviado em 18/10/2018 - 11:49h
Estava testando um "brinquedinho" enquanto aguardava o almoço e resolvi compartilhar.//------------------------------------------------------------------- // // ASM Expr X86( 32 bits ): // // ARQUIVO: // expr.c // // COMPILE: // gcc expr.c -o expr -Wall -m32 // //------------------------------------------------------------------- // #include <stdio.h> #define REG_MAX 6 enum { EAX = 0, ECX, EDX, EBX, ESI, EDI }; static char *REGISTER[REG_MAX] = { "%eax", "%ecx", "%edx", "%ebx", "%esi", "%edi" }; static int stack; void push (void) { if (stack < REG_MAX) stack++; } void pop (void) { if (stack) stack--; } void push_number (int i) { push(); printf ("mov $%d, %s\n", i, REGISTER[stack]); } void add (void) { printf ("add %s, %s\n", REGISTER[stack], REGISTER[stack-1]); pop(); } void imul (void) { printf ("imul %s, %s\n", REGISTER[stack], REGISTER[stack-1]); pop(); } void print_stack(void) { printf ("Stack(%s) = %d\n",REGISTER[stack], stack); } int main (void) { //---------------------------- // // Expression: // 10 * 20 + 3 * 5; // // Result: ecx = 215 // //---------------------------- // push_number(10); push_number(20); imul(); push_number(3); push_number(5); imul(); add(); print_stack(); return 0; }
Enviado em 18/10/2018 - 13:02h
Isso, me lembra de eu fazendo uma maquina virtual do 0.Como compartilhar a tela do Ubuntu com uma Smart TV (LG, Samsung, etc.)
Descritores de Arquivos e Swappiness
tux-gpt - Assistente de IA para o Terminal
Instalação e configuração do Chrony
Programa IRPF - Guia de Instalação e Resolução de alguns Problemas
Como instalar no Linux Jogos da Steam só para Windows
Instalando o Team Viewer no Debian Trixie - problema no Policykit
O Que Fazer Após Instalar Ubuntu 25.04
Autenticação necessária. um aplicativo quer acesso ao chaveiro (3)
O que você está ouvindo agora? [2] (175)
Copiar Layout do Teclado para aplicar em outra Distribuição (10)