Em termos leigos, o que é código de byte, código de montagem, código de máquina e código fonte?
Código fonte é um texto legível por humanos para o qual existe's software que irá transformar esse texto legível por humanos num conjunto de instruções que um computador pode executar.
Código fonte é um tipo particular de código fonte; é o código fonte que utiliza mnemónicos (abreviaturas ou acrónimos) que correspondem às instruções reais que se encontram num microprocessador. Coisas como ' adicionar dois inteiros de 16 bits', ' mover um inteiro de 16 bits', etc. É basicamente código de máquina legível por humanos.
Código da máquina é o padrão real de uns e zeros que são enviados para um microprocessador e acioná-lo para fazer algo. Aí's uma estrutura: um certo número de bits vai representar um código que seleciona e instrução no processador, e dependendo desse código, um certo número de bits vai ser usado como argumentos para essa instrução. As instruções são de natureza muito primitiva: são os dois números iguais, acrescentam a e b e os colocam em c, etc. Por fim, cada instrução que o computador executa se tornará código de máquina antes que o computador a execute.
Bytecode é um parente do código de máquina. Como o código de máquina, it's não é legível por humanos. Entretanto, ao contrário do código de máquina, ao invés de ser alimentado diretamente a um microprocessador, os códigos são lidos por um software que traduz o código do byte para o código de máquina para instrução. Então por que existe código de byte? Bem, microprocessadores diferentes têm instruções diferentes disponíveis neles e também são projetados para que possam fazer coisas inteligentes como fazer duas ou mais etapas ao mesmo tempo, desde que as instruções sejam alimentadas na ordem correta... O código byte permite que você faça todo o trabalho pesado de traduzir programas de computador legíveis por humanos em uma forma utilizável pela máquina, mas deixe a última parte de converter isso em códigos de máquina para mais tarde. Isto significa, por exemplo, que você pode escrever um programa, convertê-lo para bytecode, e depois executar o mesmo código de byte em processadores totalmente diferentes. Desde que você tenha um programa que converta o bytecode em instruções de código de máquina, você pode usar o mesmo programa em qualquer microprocessador. Além disso, o programa que executa o bytecode pode ser muito inteligente sobre como ele faz a tradução's e fazê-lo de uma forma que realmente faça o melhor uso possível do processador. No entanto, ele ainda tende a ser mais lento e requer mais memória.
Artigos semelhantes
- Quais são as diferenças entre Código de Máquina, Código de Byte, Código de Objeto e Código Fonte?
- Qual é a diferença entre bytecode, código nativo, código de máquina e código de montagem?
- Porque é que a linguagem de montagem é melhor do que a linguagem de nível da máquina?
- Porque é que a linguagem de montagem depende da máquina?