Buscar

Aula 00 - Apresentação da ementa

Prévia do material em texto

LINGUAGEM DE MONTAGEM – CCT0674-1001
Aula 00: Apresentação da ementa
Introdução à Programação
AULA 01: Introdução à Lógica de ProgramaçãoLINGUAGEM DE MONTAGEM 
Disciplina
❑Turnos Manhã :
- LINGUAGEM DE MONTAGEM
❑ Cargo Horária:
- 80 horas.
❑ Professor da Disciplina
- Hilson Barbosa da Silva.
❑ Semestre
- 1º do ano de 2021.
Horários
3
Segunda feira
Manhã: 
08:40 às 
Manhã: 
11:10
LINGUAGEM DE MONTAGEM 
Introdução à Programação
AULA 01: Introdução à Lógica de ProgramaçãoLINGUAGEM DE MONTAGEM 
Ementa da Disciplina
LINGUAGEM DE MONTAGEM 
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Contextualização 
No processamento de um programa, o computador necessita que lhe
instruam com ações bem específicas, ações estas que devem ser passadas
numa linguagem que ele possa entender, a linguagem de máquina.
Composta somente por números binários, representando as operações e os
operandos (dados) que serão usados no processamento, a linguagem de
máquina é dificílima de compreender. Assim, existe uma linguagem
representada por comandos, mas que reproduz as tarefas que serão
executadas dentro do computador, a linguagem de montagem (assembly).
LINGUAGEM DE MONTAGEM 
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Objetivos 
• Desenvolver no estudante a capacidade de entender e descrever 
a arquitetura de um microprocessador ou microcontrolador.
• Desenvolver a habilidade de programação em linguagem de 
baixo nível (assembly).
LINGUAGEM DE MONTAGEM 
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Objetivos 
• Compreender o hardware de um sistema computacional e os vários
módulos que o compõe.
• Desenvolver uma visão crítica sobre os requisitos de desempenho
associados a um sistema computacional.
• Conhecer a arquitetura x86 e seu conjunto de instruções.
• Aprender a utilizar um interpretador da linguagem de montagem para
computadores x86.
• Conhecer as técnicas de programação em assembly.
• Aplicar a linguagem assembly em microcontroladores.
LINGUAGEM DE MONTAGEM 
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Ementa 
• Organização e arquitetura básica de computadores. 
• Arquitetura x86 e seu conjunto de instruções. 
• Desenvolvimento em assembly para x86.
• Desenvolvimento em Assembly para arquiteturas de 
microcontroladores.
LINGUAGEM DE MONTAGEM 
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Unidade I 
- Arquitetura básica de computadores
1.1 - A evolução da arquitetura de computadores e seu modo de
funcionamento.
1.2 - Componentes básicos de um sistema computacional pela arquitetura
Von Neumann.
1.3 - Barramentos.
1.4 - Representação de dados e sistemas de numeração.
1.5 - Conceitos de lógica digital e circuitos combinacionais.
LINGUAGEM DE MONTAGEM 
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Unidade II 
Memórias e elementos armazenadores
2.1 - Hierarquia de memórias.
2.2 - Flip-Flops e circuitos sequenciais.
2.3 - Registradores.
2.4 - Contadores e diagramas de estados.
LINGUAGEM DE MONTAGEM 
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Unidade III 
Introdução à linguagem de montagem
3.1 - UCP hipotética e a execução de um programa.
3.2 - Ciclo de execução de uma instrução.
3.3 - Classes de instruções mais comuns: movimentação de dados,
aritméticas e lógicas,manipulação de pilha e controle de fluxo de execução
3.4 - Busca da instrução na memória.
3.5 - Exemplos de execução das instruções.
LINGUAGEM DE MONTAGEM 
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Tópico IV 
Arquitetura x86 e conjunto de instruções
4.1 - Histórico da arquitetura.
4.2 - Organização básica da arquitetura.
4.3 - Introdução ao programa montador (assembler) FASM - Flat
Assembler.
4.4 - Primeir
LINGUAGEM DE MONTAGEM 
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Tópico V 
Desenvolvimento em assembly para x86 com o programa montador.
5.1 - Instruções de desvio.
5.2 - Instruções de salto.
5.3 - Registradores de Flags.
5.4 - Instruções de desvio condicional.
5.5 - Operações bit a bit.
5.6 - Manipulação de memória e estruturas.
5.7 - Strings e subrotinas.
LINGUAGEM DE MONTAGEM 
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Tópico VI 
Assembly para microcontroladores 8051
6.1 - Diferenças entre microcontroladores e microprocessadores.
6.2 - Arquitetura do microcontrolador 8051.
6.3 - Simulador de assembly para 8051 - EDSIM.
6.4 - Exemplos de uso do assembly no 8051.
LINGUAGEM DE MONTAGEM 
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Procedimentos de Ensino
LINGUAGEM DE MONTAGEM 
• Aulas teórico-práticas no laboratório (VDI);
• Demonstrações e realização de exercícios sob a supervisão do docente.
• Exemplos práticos
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Recursos
LINGUAGEM DE MONTAGEM 
Os seguintes recursos serão utilizados ao longo da disciplina:
• Laboratório de informática remoto (VDI);
• Software para linguagem de programação Assembly
• Editor Assembly ( da sua preferência)
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Bibliografia Básica
LINGUAGEM DE MONTAGEM 
GIMENEZ, Salvador Pinillos. Microcontroladores 8051: Teoria do hardware e do
Software/Aplicações em controle digital/Laboratório e simulação [BV:PE]. 1 ed. São
Paulo: Pearson Education do Brasil, 2002.
Disponível em: https://plataforma.bvirtual.com.br/Acervo/Publicacao/471
MONTEIRO, Mario A. Introdução à organização de computadores [BV:MB]. 5 ed.
Rio de Janeiro: LTC, 2017.
Disponível em: https://integrada.minhabiblioteca.com.br/#/books/978-85-216-1973-
4/recent
STALLINGS, William. Arquitetura e Organização de Computadores: projeto para o
desempenho [BV:PE]. 10 ed. São Paulo: Prentice-Hall, 2017.
Disponível em: https://plataforma.bvirtual.com.br/Acervo/Publicacao/151479
Introdução à Programação
AULA 01: Introdução à Lógica de Programação
Bibliografia Complementar
LINGUAGEM DE MONTAGEM 
ASCENCIO, A. F. G; CAMPOS, E. A. V. FUNDAMENTOS DA PROGRAMAÇÃO
DE COMPUTADORES: Algoritmos , Pascal, C/C++ e Java [BV:PE]. 2 ed. São
Paulo: Prentice-hall, 2007.
Disponível em: https://plataforma.bvirtual.com.br/Acervo/Publicacao/417
BALIEIRO. Sistemas Operacionais [BV:RE]. 1 ed. Rio de Janeiro: SESES, 2015.
Disponível em:
http://api.repositorio.savaestacio.com.br/api/objetos/efetuaDownload/80fea820-1cb5-
4982-863f-25f09adbdd0c
GUIMARÃES, Carlos Henrique. Sistemas de Numeração - Aplicação em
Computadores Digitais [BV:PE]. 1 ed. Rio de Janeiro: Interciência, 2014.
Disponível em: https://plataforma.bvirtual.com.br/Acervo/Publicacao/37688
POLLI, Marco F.Organização de Computadores [BV:RE]. 1 ed. Rio de Janeiro:
SESES, 2014.
Disponível em:
http://api.repositorio.savaestacio.com.br/api/objetos/efetuaDownload/e96bc69e-73ca-
4147-997d-14b601acb8d5
TANENBAUM, A.S.; AUSTIN, T.Organização Estruturada de Computadores
[BV:PE]. 6 ed. São Paulo: Pearson, 2013.
Disponível em: https://plataforma.bvirtual.com.br/Acervo/Publicacao/3825

Continue navegando