Thursday, 30 November 2017

Machine code vs binary options


O código do assembly é uma representação legível do código da máquina: O código da máquina é puro código hexadecimal: suponho que você quer dizer código-objeto como em um arquivo de objeto. Esta é uma variante do código de máquina, com uma diferença que os saltos são tipo de parametrizado de tal forma que um vinculador pode preenchê-los. Um assembler é usado para converter código de assembly em código de máquina (código de objeto) ) Para gerar um executável. Eu tenho uma vez escrito um programa de montagem em puro hex (não montador disponível) felizmente este era o caminho de volta para o velho bom (antigo) 6502. Mas estou contente lá são montadores para os opcodes pentium. Breton Nesse sentido, não há tal coisa como quothx codequot direito quotHex codequot é apenas uma maneira de ver o código da máquina. Você pode ver o código da máquina em hexadecimal, binário, octal, decimal ou como quiser. Também neste sentido, não há nenhum código quotbinary também. Novamente, o código quotbinary é apenas uma maneira de ver o código da máquina. Ndash Utku Nov 15 15 at 11:22 Um ponto ainda não mencionado é que existem alguns tipos diferentes de código de montagem. Na forma mais básica, todos os números usados ​​nas instruções devem ser especificados como constantes. Por exemplo: O bit de código acima, se armazenado no endereço 1900 em um cartucho Atari 2600, exibirá um número de linhas em cores diferentes obtidas de uma tabela que começa no endereço 1437. Em algumas ferramentas, digitando um endereço, junto com A parte mais à direita da linha acima, armazenaria em memória os valores mostrados na coluna do meio e iniciaria a próxima linha com o seguinte endereço. Digitar o código dessa forma era muito mais conveniente do que digitar em hexadecimal, mas era preciso conhecer os endereços precisos de tudo. A maioria dos montadores permite a utilização de endereços simbólicos. O código acima seria escrito mais como: O montador ajustaria automaticamente a instrução LDA para que ele se referir a qualquer endereço foi mapeado para a etiqueta ColorTbl. Usando este estilo de assembler torna muito mais fácil escrever e editar código do que seria possível se tivesse que mão-chave e hand-maintain todos os endereços. Respondeu Dec 19 10 at 2:58 1. Um ponto adicional adicional: há também diferentes linguagens de montagem sintaxe. Sendo a mais famosa Intel e ATampT. Ndash informatik01 Jan 7 14 at 15:40 informatik01: Como sobre Intel 8080 mnemônicos vs Zilog Z80 Eu acho que antecede a guerra de sintaxe Intel vs ATampT. Ndash supercat Jan 7 14 at 16:39 Não discutindo, eu apenas mencionei esse aspecto (sintaxe diferente) e dei um exemplo de duas sintaxes mais populares / bem conhecidas / famosas. Ndash informatik01 Jan 7 14 at 16:46 O código de montagem é discutido aqui. Uma linguagem de montagem é uma linguagem de baixo nível para a programação de computadores. Ele implementa uma representação simbólica dos códigos de máquina numérica e outras constantes necessárias para programar uma arquitetura de CPU específica. O código da máquina é discutido aqui. O código máquina ou linguagem de máquina é um sistema de instruções e dados executados diretamente por uma unidade de processamento central de computadores. Basicamente, o código do assembler é a linguagem e é traduzido para código-objeto (o código nativo que a CPU executa) por um assembler (análogo a um compilador). Acho que estas são as principais diferenças de legibilidade do código de controle sobre o que está fazendo o seu código de leitura pode fazer o código melhorou substituído 6 meses depois que ele foi criado com pouco esforço, por outro lado, se o desempenho é crítico você pode querer usar Um idioma de baixo nível para direcionar o hardware específico que você terá na produção, para obter uma execução mais rápida. IMO hoje computadores são rápidos o suficiente para permitir que um programador ganhar rápida execução com OOP. Assembly é curto termos descritivos humanos podem entender que pode ser diretamente traduzido no código de máquina que uma CPU realmente usa. Embora um pouco compreensível por seres humanos, Assembler ainda é nível baixo. É preciso muito código para fazer qualquer coisa útil. Então, em vez disso, usamos linguagens de alto nível como C, BASIC, FORTAN (OK, eu sei que eu namorei comigo). Quando compilados, estes produzem código objeto. As primeiras línguas tinham a linguagem da máquina como seu código-objeto. Muitas línguas hoje tais como JAVA e C geralmente compilam em um bytecode que não é código de máquina, mas que facilmente pode ser interpretado em tempo de execução para produzir código de máquina. Respondeu Jan 21 09 às 20:45 Seu comentário sobre Java e C - ambos uso Just In Time compilação para que bytecodes não são interpretados. C (.NET geralmente) compila a Intermediate Language (IL) que é então JITed em linguagem de máquina nativa para a CPU de destino. Ndash Craig Shearer 21 de janeiro às 20:52 2017 Stack Exchange, Inc

No comments:

Post a Comment