Ir ao conteúdo
  • Cadastre-se

C++ Como colocam comando C++ em hardwares de máquinas?


Andex79

Posts recomendados

Um dia desses, eu estava na escola e vi um robozinho que tinha um controle e que era comandado por ele, ele fazia diversas funções, meu professor disse que a linguagem de programação era de C++, me deu a duvida de vir perguntar aqui, como é que colocam a linguagem C++ nas placas de hardware de um controle?

  • Amei 1
Link para o comentário
Compartilhar em outros sites

É uma pergunta interessante. Não sou muito entendido do assunto, mas posso correr atrás de algumas referencias se quiser se aprofundar e também posso te ajudar a entender pelo menos a lógica do processo

 

Não sei se você entende de computador, mas é valido considerar a placa de um controle como um pequeno computadorzinho: ele possui alimentação, memória, um processador e armazenamento. Tudo bem condensado e junto, com o objetivo interpretar os botões do controle, por exemplo

 

O processador do controle -- pode ser um chip ou um micro controlador --, assim como seu computador, roda um determinado conjunto de instruções básicas que são os códigos Assembly, representados por um monte de 0 e 1. A função do compilador é converter o código de C++ para assembly. Para entender o processo, vale entender as diferenças de um código C++ pra um código Assembly:

  • Código C++ é uma forma de você dizer o que ao compilador o que você quer que instrua a máquina a fazer, e isso te dá liberdade de usar formas mais sofisticadas  e confortáveis de arquitetar seu programa, usando recursos como variáveis para reservar espaços na memória,  funções para poder dividir seu código em pequenas partes, orientação a objetos para separar cada funcionalidade em um objeto e fazer eles trocarem informações etc.
  • Já o Assembly, é você dizendo ao processador exatamente o que quer que ele faça, passo a passo.

Veja o exemplo da diferença de um pseudo código entre C++ e assembly para somar os números 50 e 25.

// Em C++
int resultado = 50 + 25; 

E o compilador vai converte-lo para algo parecido com isso:

; Em Assembly

mov ax, 32h			; Coloca o valor 50 em hexadecimal (32) no registrador de memoria AX.
mov bx, 19h			; Coloca o valor 25 em hexadecimal (19) no registrador de memoria BX.

add ax, bx			; Soma os valores

 

 

O código Aassembly é a ultima camada entre você e o processador em sí. Cada instrução vai ser convertido diretamente para o seu equivalente em código de máquina, se quiser, pode escrever manualmente, tipo, o mesmo exemplo acima poderia ser escrito como

B0 32	; Coloca o valor 50 no AX.
88 19	; Coloca o valor 25 no BX.
05 	; Soma valores

*Na real, isso aqui é só  pra ilustrar, a instruções variam de acordo com a arquitetura e o chip e posso ter errado na implementação também ksks.

 

Que no final, vai ser escrito em uma fileira de bits  eu o processador vai poder entender tranquilamente, como no exemplo

10110000 00110010	; Grava 50 no AX.
10001000 00011001	; Grava 25 no BX.

00000101			; Soma.

 

Aí essas instruções vão ser guardadas na memória da plaquinha como

1011000000110010100010000001100100000101

 

 Sempre que a plaquinha for ligada, ela vai ler essa fileira de 0 e 1 e fazer a soma de 50 e 25. Rodando o código que você escreveu em C++, que foi convertido e guardado na memoria dela

 

 

 

Nada de muito complicado, é só meio difícil de entender no começo, mas se você for programar, vai se acostuma com o tempo

  • Amei 2
Link para o comentário
Compartilhar em outros sites

@Andex79     se for um robot que use uma placa de Arduino Uno , da Artmega ,  os codigos sao inseridos na memoria dessa placa usando o programa arduino ,  instalado no computador e atraves de um cabo usb ,  e em outros casos onde o controlador seja um pic ,  pode ser outras condicoes e ate mesmo um programador de Eeprom .

  • Amei 2
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!