1 / 5

Fernando Gehm Moraes Ney Laert Vilar Calazans

LABORG. Fernando Gehm Moraes Ney Laert Vilar Calazans. Parte 4 – Programação em Linguagem de Montagem do MIPS. 02/setembro/2013. Introdução. MIPS – Um processador RISC de 32 bits

Download Presentation

Fernando Gehm Moraes Ney Laert Vilar Calazans

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. LABORG Fernando Gehm MoraesNey Laert Vilar Calazans Parte 4 – Programação em Linguagem de Montagem do MIPS 02/setembro/2013

  2. Introdução • MIPS – Um processador RISC de 32 bits • Conjunto de Instruções – Usa-se o Instruction Set Architecture (ISA) do MIPS R2000, primeira geração do MIPS (década de 80) • Todas as instruções ocupam 32 bits • Dados mais naturalmente tratados são de 32 bits • ISA do MIPS R2000 “dá suporte direto a”*: • Números naturais de 32, 16 ou 8 bits • Números inteiros de 32, 16 ou 8 bits • Números racionais de 32 ou 64 bits • Manipulação de caracteres ASCII compactados em palavras de 32 bits ou descompactados • Suporte limitado a dados quaisquer de 64, 32, 16 e 8 bits • “Dá suporte direto a” significa  “possui instruções específicas para manipular tais tipos de dados”

  3. Objetivos • Esta aula tem como objetivos: • Dar noções de como estruturar programas em linguagem de montagem do MIPS • Dar noções de como criar estruturas de dados simples no MIPS • Treinar conceitos básicos de programação no MIPS com: • Números naturais • Números inteiros • Cadeias de caracteres • Forma de realizar este treino – escrever e testar três programas: • Somar o conteúdo de duas variáveis inteiras positivas de 64 bits e colocar o resultado em uma terceira variável – Soma64bits • Multiplicar dois números naturais de 32 bits e imprimir o resultado - Multip • Manipular uma cadeia de caracteres qualquer, trocando todas as vogais maiúsculas por letras minúsculas, mantendo todos os demais caracteres intactos. Imprimir o resultado - Vogaistolower • Notar que números racionais não serão abordados aqui, pois sua representação será estudada apenas em disciplina posterior

  4. TRABALHO A FAZER • Familiarizar-se com o ambiente de desenvolvimento MARS para o MIPS R2000 • Compreender o processo de edição, montagem e simulação, incluindo operações de entrada e saída no ambiente MARS • Programar as três aplicações mencionadas aqui e mostrar que os programas funcionam usando o ambiente MARS: • Soma64bits.asm – Dicas: o grande problema é como propagar o vai-um dos 32 bits inferiores para os superiores. Use instruções de teste para resolver o problema • Multip.asm - Dicas: Usem uma das instruções de multiplicação do MIPS, mas o resultado final deve estar em registradores do Banco de registradores, e não nos registradores especiais HI e LO • Vogaistolower.asm - Dicas: Os caracteres entre A-Z possuem representação ASCII que em hexadecimal (8bits) vão respectivamente em sequência de 0x41 a 0x5A, e os caracteres a-z vão em sequência de 0x61 a 0x7A. Controlem as decisões no programa fazendo testes numéricos para verificar se os caracteres são os que se quer alterar

  5. A ENTREGAR – T4 • Um arquivo compactado (.zip, .rar, etc.) contendo: • Os códigos dos três programas em 3 arquivos distintos (.asm) • Relatório incluindo telas do MARS, mostrando a operação correta de cada um dos programas • Data Final de Entrega:Ver Homepage, até antes 15min antes do horário de início da aula via sala do Moodle ou por e-mail (em caso de inacessibilildade do Moodle)

More Related