Improve Portuguese translation of Assembly Language guide (#27284)

This commit is contained in:
Diogo Campos
2019-08-16 00:37:09 -03:00
committed by Randell Dawson
parent 7abe62d63d
commit 579fe1bccb

View File

@ -4,18 +4,20 @@ localeTitle: Linguagem Assembly
--- ---
## Linguagem Assembly ## Linguagem Assembly
Assembly Language é a interface entre linguagens de nível superior (C ++, Java, etc) e código de máquina (binário). Para uma linguagem compilada, o compilador transforma código de nível superior em código de linguagem assembly. Linguagem Assembly é a interface entre as linguagens de alto nível (C++, Java, etc) e o código de máquina (binário). Para uma linguagem compilada, o compilador transforma código de alto nível em código de linguagem assembly.
Cada família de CPUs define seu próprio ISA (Instruction Set Architeture), um conjunto de instruções básicas que a CPU pode executar sem precisar de mais tradução ou transformação. O compilador decompõe instruções compostas compostas de nível superior em operações disponíveis no ISA. Alguns dos ISAS mais comuns atualmente em uso incluem MIPS, ARM, Intel x86, RISC-V. Cada família de CPUs define seu próprio ISA (Instruction Set Architecture), um conjunto de instruções básicas que a CPU pode executar sem precisar de mais tradução ou transformação. O compilador decompõe instruções compostas de alto nível em operações disponíveis no ISA. Alguns dos ISAS mais comuns atualmente em uso incluem MIPS, ARM, Intel x86, RISC-V.
Os montadores decompõem as instruções de montagem em suas respectivas representações binárias e substituem os endereços genéricos do código assembly pelo registro explícito e pelos endereços de memória do seu computador. Os montadores decompõem as instruções Assembly em suas respectivas representações binárias e substituem os endereços genéricos do código assembly por endereços explícitos de registradores e de memória do seu computador.
Código onde o tempo de execução e controle é crucial pode ser escrito diretamente no montador. No entanto, isso custa ao prolongar o tempo de desenvolvimento e dificultar o desenvolvimento. Também deve ser notado que tem havido uma grande quantidade de pesquisas para tornar os compiladores otimizarem o código que é gerado automaticamente. Código onde o tempo de execução e controle é crucial pode ser escrito diretamente em assembly. No entanto, isso tem o custo de prolongar o tempo de desenvolvimento e dificultar o desenvolvimento. Também deve ser notado que já houve uma grande quantidade de pesquisas para fazer os compiladores otimizarem o código que é gerado automaticamente.
O idioma de montagem é usado principalmente nas seguintes situações: A linguagem assembly é usada principalmente nas seguintes situações:
* É necessário usar instruções de CPU não disponíveis em idiomas de nível superior. * É necessário usar instruções de CPU não disponíveis em linguagens de alto nível.
* Não há linguagem de alto nível para programar certos tipos de processadores. * Não há linguagem de alto nível para programar um certo tipo de processador.
* Implementando um compilador para uma linguagem de nível superior em um novo ISA. ![Imagem dos níveis de código](https://raw.githubusercontent.com/colbybanbury/assemblyPicture/master/Screenshot%20from%202017-10-14%2014-03-06.png) * Implementar um compilador para uma linguagem de alto nível em um novo ISA.
![Imagem dos níveis de código](https://raw.githubusercontent.com/colbybanbury/assemblyPicture/master/Screenshot%20from%202017-10-14%2014-03-06.png)
#### Mais Informações: #### Mais Informações: