Programação  
 
Rede de conhecimento computador >> Programação >> Programação De Computador Idiomas >> Content
Por que o programa de linguagem de máquina escrito em um computador não será executado em outro com CPU diferente?
Um programa de linguagem de máquina escrito para um computador não será executado em outro com uma CPU diferente, porque a linguagem da máquina está diretamente ligada à arquitetura específica da CPU . Isso significa que as instruções são codificadas de uma maneira que apenas o hardware da CPU em particular pode entender e executar. As diferenças se enquadram em várias áreas -chave:

* Conjunto de instruções Arquitetura (ISA): Este é o conjunto fundamental de instruções que uma CPU entende. Diferentes CPUs (mesmo do mesmo fabricante) têm ISAs diferentes. O que é uma instrução de adição simples em uma CPU pode ser uma operação complexa de várias etapas em outra, ou pode nem existir. A codificação dessas instruções (os padrões de bits específicos que representam cada instrução) varia muito entre as ISAs.

* Número de registros: As CPUs possuem registros internos para armazenamento temporário de dados. O número e o tamanho desses registros diferem entre as CPUs. Um programa gravado para usar um número específico e o tipo de registro não funcionará em uma CPU com uma configuração diferente.

* Modos de endereço de memória: Como a CPU acessa a memória (por exemplo, endereçamento direto, endereçamento indireto etc.) varia entre arquiteturas. O código da máquina reflete esses modos de endereçamento, tornando -o incompatível com as CPUs usando métodos diferentes.

* Representações de dados: A maneira como os tipos de dados (números inteiros, números de ponto flutuante etc.) são representados em formato binário podem diferir. Um programa compilado para a representação de dados de uma CPU pode produzir resultados incorretos ou até travar em uma CPU com uma representação diferente.

* Chamadas do sistema: Os programas geralmente interagem com o sistema operacional através de chamadas do sistema. A maneira como essas chamadas são feitas e os códigos específicos utilizados são a CPU e o sistema operacional específico, adicionando outra camada de incompatibilidade.


Em essência, o código da máquina é extremamente baixo e fortemente acoplado ao hardware físico. Tentar executar o código da máquina compilado para uma CPU em outra é como tentar tocar um recorde destinado a uma plataforma giratória de 33⅓ rpm em uma plataforma giratória de 45 rpm - as velocidades são diferentes e o resultado é sem sentido. Idiomas de nível superior (como C ++, Java, Python) resolvem esse problema usando compiladores ou intérpretes para traduzir o código em um formulário adequado para a arquitetura da CPU de destino.

Anterior :

Próximo :
  Os artigos relacionados
·Como fazer Software Mac Touch-Screen 
·Como encontrar uma matriz de cadeia celular em MATLAB 
·Por que é uma planilha do Excel externa um documento c…
·Como reduzir um banco de dados ASA 
·Como fazer uma exibição de caixa de texto Dependendo …
·Como instalar o ColdFusion 8 no IIS 6 
·Como alterar as extensões de arquivo de áudio 
·Como remover um token Open 
·Como criar um guia da cidade em Joomla 
·Como classificar verbo no COBOL Programa 
  Artigos em destaque
·Instalação MSI Nested 
·Como criar uma caixa de texto no Visual C # 
·Como criar uma tabela para um arquivo delimitado em Vis…
·O que é um gegabyte? 
·Como fazer uma mudança de imagem na Mouseover 
·Como faço para evitar linhas de nulos em 'Select cláu…
·Como Escolher o formulário de Start-up em um aplicativ…
·Como criar um índice para classificar Características…
·Como Jogar Sounds Com Visual Basic 
·Como você recupera dados da tabela do mysql para jsp? 
Cop e direita © Rede de conhecimento computador https://ptcomputador.com Todos os Direitos Reservados