Enquanto pesquizava sobre este assunto na Internet encontrei um vídeo muito interresante sobre a fabricação de Microprocessadores.
Intruções em processadores
•20 20UTC Fevereiro 20UTC 2009 • Deixe um ComentárioNeste post vou falar nas instruções com os quais os processadores trabalham.
A execução de programas é dividida em várias camadas:
- Linguagem de Alto nível;
- Assembly – Linguagem de programação;
- Linguagem de Máquina;
- Transferência de Registos;
- Portas;
- Circuitos;
Conversão de Código C para Assembly
Exemplo 1
//Código C
#include<stdio.h>
int main()
{
printf("ola");
return 0;
}
//Código Assembly
.file "1.c"
.section .rodata
.LC0:
.string "ola"
.text
.globl main
.type main, @function
main:
leal 4(%esp), %ecx
andl $-16, %esp
pushl -4(%ecx)
pushl %ebp
movl %esp, %ebp
pushl %ecx
subl $4, %esp
movl $.LC0, (%esp)
call printf
movl $0, %eax
addl $4, %esp
popl %ecx
popl %ebp
leal -4(%ecx), %esp
ret
.size main, .-main
.ident "GCC: (Debian 4.3.2-1) 4.3.2"
.section .note.GNU-stack,"",@progbits
Exemplo 2
//Código C
#include<stdio.h>
int main()
{
int i=0;
while(i++<10)
printf("ola");
}
//Código Assembly
.file "2.c"
.section .rodata
.LC0:
.string "ola"
.text
.globl main
.type main, @function
main:
leal 4(%esp), %ecx
andl $-16, %esp
pushl -4(%ecx)
pushl %ebp
movl %esp, %ebp
pushl %ecx
subl $36, %esp
movl $0, -8(%ebp)
jmp .L2
.L3:
movl $.LC0, (%esp)
call printf
.L2:
cmpl $9, -8(%ebp)
setle %al
addl $1, -8(%ebp)
testb %al, %al
jne .L3
addl $36, %esp
popl %ecx
popl %ebp
leal -4(%ecx), %esp
ret
.size main, .-main
.ident "GCC: (Debian 4.3.2-1) 4.3.2"
.section .note.GNU-stack,"",@progbits
Exemplo 3
//Código C
#include<stdio.h>
int main(void)
{
int i=0, j;
scanf("%d",&j);
while(i++<j)
if(i%2)
printf("%d", i);
}
//Código Assembly
.file "3.c"
.section .rodata
.LC0:
.string "%d"
.text
.globl main
.type main, @function
main:
leal 4(%esp), %ecx
andl $-16, %esp
pushl -4(%ecx)
pushl %ebp
movl %esp, %ebp
pushl %ecx
subl $36, %esp
movl $0, -8(%ebp)
leal -12(%ebp), %eax
movl %eax, 4(%esp)
movl $.LC0, (%esp)
call scanf
jmp .L2
.L3:
movl -8(%ebp), %eax
andl $1, %eax
testb %al, %al
je .L2
movl -8(%ebp), %eax
movl %eax, 4(%esp)
movl $.LC0, (%esp)
call printf
.L2:
movl -12(%ebp), %eax
cmpl %eax, -8(%ebp)
setl %al
addl $1, -8(%ebp)
testb %al, %al
jne .L3
addl $36, %esp
popl %ecx
popl %ebp
leal -4(%ecx), %esp
ret
.size main, .-main
.ident "GCC: (Debian 4.3.2-1) 4.3.2"
.section .note.GNU-stack,"",@progbits
Para o processador trabalhar é necessário trabalhar com a memória.
A memória é organizada em bits (unidade mínima de de informação), sendo preciso um condensador por cada bit de memória.
O processador trabalha com registos, destinados ao controlo e que apenas podem ser acedidos pela unidade de controlo. Existem diversos tipos de registos:
- Contador de Programas;
- de Endereçamento de Memória;
- de Dados;
- de Instruções;
- Palavras de Estado do Programa;
Para o CPU executar as instruções tem de seguir alguns passos de execução. Esses passos são:
- Instruções Aritméticas e Lógicas;
- Instruções de Movimento de Dados;
- Operações de Dados em Blocos;
- Instruções de Controlo de Programa;
- Instruções de I/O – Input/Output;
A lógica do microprocessador
•12 12UTC Fevereiro 12UTC 2009 • Deixe um ComentárioPara entender o funcionamento de um microprocessador, devemos entender a lógica utilizada para se criar um. Neste processo, você também vai aprender um pouco de linguagem assembly (a língua utilizada num microprocessador) e muitas outras coisas que os engenheiros fazem para aumentar a velocidade do computador.
Um microprocessador executa uma série de instruções de máquina que lhe dizem o que fazer. As três funções básicas de um processador são:
- utilizando a ALU (Unidade Lógico-Aritmética), o microprocessador pode executar operações matemáticas como adição, subtração, multiplicação e divisão. Os microprocessadores modernos contêm processadores de ponto flutuante que podem executar operações extremamente sofisticadas com número grandes em pontos flutuantes;
- um microprocessador pode mover dados de um endereço de memória para outro;
- um microprocessador pode tomar decisões e desviar para um outro conjunto de instruções baseado nestas decisões.
O que é um Microprocessador?
•12 12UTC Fevereiro 12UTC 2009 • Deixe um ComentárioSão como o coração de qualquer computador, desde portáteis até desktops. Estes são como máquinas repletas de computação embutidas num chip (transístores ligados entre si).
Estes são também conhecidos por CPU ou Unidade Central de Processamento.
Entre as marcas mais comuns de microprocessadores encontrámos a Intel e a AMD, entre diversos outros tipos tais como Atom, Core 2 Duo, Celeron, Phenon, Turyon e Athlon, ambos bastante semelhantes na forma de realizar as operações.

A sua função consiste em controlar e coordenar todas as operações do sistema.
É o componente mais caro da máquina, sendo o seu preço duas ou três vezes maior que o da placa-mãe em que fica alojado.
Extrai todas as instruções dos programas residentes na memória RAM do computador, analisa-as e emite as ordens necessárias para serem realizadas.

Funcionamento do Processador
Microprocessadores
•6 06UTC Fevereiro 06UTC 2009 • Deixe um ComentárioRecentemente realizei um trabalho sobre Microprocessadores. Decidi colocá-lo na net. Para download carregue no link seguinte:
http://rapidshare.com/files/194748143/10_H_lder_Costa_Microprocessadores.ppt
Quando ligo o computador, ouve-se um ruído forte
•14 14UTC Dezembro 14UTC 2008 • Deixe um ComentárioO monitor mostra a mensagem “No Boot Device, Missing Operating System”, ou algo parecido
•14 14UTC Dezembro 14UTC 2008 • 1 ComentárioO computador mostra a mensagem de arranque de BIOS mas não arranca nem mostra qualquer mensagem de erro
•14 14UTC Dezembro 14UTC 2008 • Deixe um ComentárioQuando o computador mostra a mensagem de arranque de BIOS mas não arranca nem mostra qualquer mensagem de erro, deve proceder da seguinte forma:
- Isto pode ser normal. Reinicie o computador;
- Aceder à BIOS, reverter para as opções padrão, grave e reinicie o computador;
- Verificar se o computador está a aceitar o teclado;
- Verifique as opções da Bios: CPU speed, FSB speed e memory timings;
- Substitua componentes e cabos.
O sistema recusa a arrancar de uma drive (ópticas ou USB)
•14 14UTC Dezembro 14UTC 2008 • 2 ComentáriosQuando se pressiona o botão ligar, nada acontece
•14 14UTC Dezembro 14UTC 2008 • Deixe um ComentárioSe ao pressionar o botão ligar na caixa do computador nada acontece, deve:
- Verificar UPS (up time system);
- Verificar se o cabo ATX da Motherboard está correctamente ligado;
- Verificar a fonte de alimentação;
- Verificar botão ON/OFF;
- Remover cabos e expansões;
- Remover as memórias e testá-las noutro PC;
- Remover ventoinhas;
- Verificar processador e socket (ligação de entrada de processador na Motherboard);
- Remover a Motherboard e procurar defeitos
- Substituir Motherboard;






