Enviado em 01/07/2014 - 11:42h
/*
**-------------------------------------------------------------------
**
** COMPILE:
** gcc prog.c -o prog -Wall
**
**-------------------------------------------------------------------
*/
#include <stdio.h>
int i;
//
// i = 20 / 5; // 4
//
void funcao (void)
{
asm ("push $20"); // primeiro numero MAIOR
asm ("push $5"); // agora numero menor
//---------------------------------
//
// troca: (%esp), 4(%esp)
//
//---------------------------------
asm ("mov (%esp), %eax");
asm ("mov 4(%esp), %edx");
asm ("mov %eax, 4(%esp)");
asm ("mov %edx, (%esp)");
//---------------------------------
asm ("pop %eax");
asm ("cltd");
asm ("idivl (%esp)");
asm ("mov %eax,(%esp)");
#ifdef _WIN32
asm ("pop _i");
#endif
#ifdef __linux__
asm ("pop i");
#endif
}
int main (void)
{
funcao();
printf ("\nresult i: %d\n", i); // 4
return 0;
}
asm ("fxch %st(1)");
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Criando uma VPC na AWS via CLI