Assembly

Description

Mind Map on Assembly, created by Yuri Martins on 14/08/2020.
Yuri Martins
Mind Map by Yuri Martins, updated more than 1 year ago
Yuri Martins
Created by Yuri Martins almost 4 years ago
149
0

Resource summary

Assembly
  1. Sequência de instruções que antecedem o código de máquina
    1. Uma instrução é um mnemônico
      1. Cada instrução tem sua quantidade de argumentos definidas
        1. Label
          1. Agrupamento de instruções
            1. Tem um nome para ser identificado como um bloco
              1. Está associado a um endereço de memória
        2. Cada processador tem seu código assembly, porque cada processador tem suas instruções
          1. Deve saber-se o aparelho em que está programando, para saber os limites de memória e processamento que ele possui
            1. Atmega 328p(Microcontrolador) Trabalhado em aula
              1. Memória Flash(Programa)
                1. Guarda o código de máquina
                  1. Memória que não será apagada, ao menos que seja sobrescrita
                    1. Trabalha com 16 bits
                      1. Denominado Bus Program
                      2. Processo de leitura dos dados
                        1. PC é iniciado com 0, ou seja inicia na linha 0
                          1. A instrução contida na linha Reg. de Instrução recebe a mesma
                            1. Decoder recebe o valor geralmente em Hexadecimal da instrução contida naquela linha, e decodifica para binário para que possa ser lida pelo sistema
                              1. O valor em binário enfim decodificado, vai diretamente ao Bus Control para ser distribuído
                                1. De acordo com a instrução, o valor poderá ser levado a alguma parte da RAM, e posteriormente ser utilizado pela ULA, ou só ficar guardado na RAM
                                  1. Após a última instrução, dependendo, algum bit do SREG pode ser alterado
                                    1. PC é incrementado(PC = PC + 1), ou seja, PC vai para a próxima linha, e então o ciclo se repete
                      3. Memória RAM(Volátil)
                        1. Registradores
                          1. Armazenam valores para uma posterior utilização
                            1. Registradores de I/O
                              1. PORTx
                                1. Defini se um pino está ligado(1), ou desligado(0)
                                  1. Pull-up
                                    1. Evita que o pino fique flutuando
                                      1. Valor lógico de ligado(1 no PORTx) em uma entrada(0 no DDRx)
                                        1. Quando se define um pino como entrada(0), e seu status como ligado(1 no PORTx), o mesmo está habilitado com pull-up
                                      2. Ao colocar um pino de saída como ligado(1 no PORTx), enviamos um dado lógico a aquele pino
                                    2. DDRx
                                      1. Define se um pino é de entrada(0), ou saída(1)
                                      2. Pinx
                                        1. Faz leitura e armazenamento do nível lógico de cada pino
                                          1. Armazena o valor dentro de um pino, quando definido como entrada(0)
                                            1. É possível escrever valores em registradores PINx, e o mesmo afetará o PORTx
                                              1. Ex: Um pino definido como saída, ao escrever 1(ligado) nessa entrada, o mesmo valor será atribuído ao PORTx
                                        2. Registradores GPR(Registradores de Proposito Geral)
                                          1. São registradores numerados do R0 ao R31
                                            1. R26 e R27 é o registrador X R28 e R29 é o registrador Y R30 e R31 é o registrador Z
                                              1. No total, armazenam cada um, no máximo 16 bits
                                            2. São memórias de uso mais rápido da ULA, e de mais fácil carregamento(prático)
                                            3. Registrador de Instrução
                                              1. Armazena a instrução sendo realizada no momento
                                              2. Registrador de Status(SREG)
                                                1. Registrador que armazena valores de status da últiam operação(instrução), ou se ela gerou algo
                                                  1. Mais usados: T, Z, N e C
                                                    1. T(Bit Copy Storage), bit 5. Representa Bit de cópia temporária do registrador
                                                      1. Z(Zero Flag), bit 1. Representa quando uma operação resulta em 0
                                                        1. N(Negative Flag), bit 2. Representa quando uma operação resulta em valor negativo
                                                          1. C(Carry Flag), bit 0. Representa quando em uma operação resulta em estouro, ou seja, valores acima de 8 bits, no caso do atmega328p
                                                            1. Ex: Uma soma de 255 + 1, é igual a 256, ou seja, um estouro(carry), pois o valor 256 em decimal ocupa 9 bits, ou seja, maior do que o suportado na memória RAM
                                                      2. Trabalha na manipulação de 8 bits(0 a 255)
                                                        1. Memória que será apagada quando o programa terminar
                                                          1. SRAM
                                                            1. Memória também de fácil acesso
                                                              1. Está associado somente a endereços, sem conter um nome
                                                            2. Periféricos
                                                              1. Portas de I/O
                                                                1. Possibilita contato com o mundo exterior, como ligar um LED, ou conectar um botão, por exemplo.
                                                                  1. Possui 3 portas, B; C e D
                                                                  2. EEPROM, Clock, A/D, Interrupção, Comparador e SPI
                                                                  3. ULA(Unidade lógica e aritmética)
                                                                    1. Uma das principais partes do Microcontrolador
                                                                      1. Faz operações matemáticas e lógicas de 2 conjunto de números por vez, de no máximo 8 bits cada
                                                                      2. Decoder
                                                                        1. Decodifica a instrução contida no Reg. de instrução para ser utilizada pelo sistema
                                                                        2. Bus Control
                                                                          1. Linhas de transmissão de dados
                                                                          2. PC
                                                                            1. Guarda a linha(endereço) de leitura do programa
                                                                        Show full summary Hide full summary

                                                                        Similar

                                                                        Diferença entre Linguagens de Alto nível, de Montagem e de Máquina
                                                                        Raquel Sales de Azevedo
                                                                        Transition Metals
                                                                        Madeleine.Dc
                                                                        GCSE PE - 2
                                                                        lydia_ward
                                                                        Ionic Bondic Flashcards.
                                                                        anjumn10
                                                                        Geography - Population
                                                                        Grace Evans
                                                                        Nervous System
                                                                        4everlakena
                                                                        GCSE Computing : OCR Computing Course Revision
                                                                        RoryOMoore
                                                                        GCSE History – The early years and the Weimar Republic 1918-1923
                                                                        Ben C
                                                                        Trigonometry, Equations, Pythagoras theorem
                                                                        Caitlin Mortlock
                                                                        Repaso Revalida PR 2016
                                                                        Rodrigo Lopez
                                                                        Část 2.
                                                                        Gábi Krsková