'programação' Category
-
nov292009
Assembly inline
I’ve made some code snippets about assembly inline with GCC. A quick search points to a lot of good documentation.
IBM DeveloperWorks about Inline asssembly for x86 in Linux
Linux Documentation Project HOWTO describing GCC Inline AssemblyThe syntax may be confusing, if you don’t understand read the documentation available. Each example are an C function with [...]
-
nov252009
Google Translate na linha de comando
Isto pode ser feito de mil maneiras diferentes (e até mais simples) : usando shell script, python, php, etc. Resolvi fazer uma prova do conceito em Qt/C++ para treinar. Para executar baixe o script de instalação install-translate.sh que ira fazer o downlad dos arquivos e compilar.
-
nov122009
Otimização
Dentre as diversas apresentações no Linux Kongress 2009 a palestra do Felix von Leitner’s me chamou atenção. Com título “Compiler Optimization Survey” ele discutiu os aspectos relacionados a programação nos compiladores modermos e as possibilidades de otimização (slides). A idéia básica é que:
Otimização é importante
Mas frequentemente: Código legível é mais importante
Aprenda o que seu compilador [...] -
set272009
Depurando programas em assembly no GNU/Linux (parte 1)
Embora eu particularmente prefira a sintaxe AT&T à Intel. Estou tendo que aprender a usá-la (e bem). Para os estudos optei pelo NASM, GNU ld e o GDB. Um processo simples, descrito abaixo:
#nasm -g -f elf programa.asm
#ld programa.o
#gdb -q a.out
Vamos fazer um pequeno programa teste que carrega no registro ecx o valor da variável [...] -
set212009
Básico de ponteiros com o GDB
Esse é um pequeno lembrete para quem quer pegar o conceito de ponteiro rápido. É tão simples que nem programa direito você vai precisar, só seguir sua intuição e o GDB
1. Básico
Vamos começar com um código muito simples.#include <stdio.h>
int main(int argc, char *argv[]) {
int *ptr = NULL;
int variavel_A;
int variavel_B;
variavel_A = 5;
variavel_B = 18;
return [...] -
set112009
Enviando SMS no GNU/Linux
Essa semana vi no blog do Mauro Martins um post sobre mandar SMS a partir do Excel (recomendo ler lá antes). Fiquei curioso, mas por opção resolvi utilizar apenas o GNU/Linux. O exemplo a seguir pode ser feito utilizando qualquer sistema Linux, a linguagem Python (com o módulo do PySerial instalado) e um celular smartphone [...]
-
set092009
PySerial – Utilize o Python para controlar a interface serial
Embora seja uma tecnologia antiga ainda é utilizada amplamente, muitos dos projetos eletrônicos no estilo “faça você mesmo” utilizam o protocolo de comunicação serial. Este post mostra como é possível (e fácil) utilizar a linguagem Python para fazer a interface com a porta serial (RS232) seja no Windows, GNU/Linux, *BSD, Solaris, etc. Com o PySerial [...]
-
jul232009
Máscaras de bits
Este é um pequeno resumo para utilizar máscara-de-bits quando você precisar armazenar flags booleanas em uma única variável inteira. Abaixo estão dois exemplos, um em C e outro em Python.
Linguagem C#define FLAG_TEMPERATURA 1
#define FLAG_ALARME_1 2
#define FLAG_ALARME_2 4
#define FLAG_INTERRUPCAO 8Lembre-se de organizar em potências de 2.
1) Para verificar o valor utilize [...]