1 / 14

Ambiente Mars

Ambiente Mars. Prof. André Luis Meneses Silva. Introdução. O simulador MIPS Mars foi desenvolvido pela universidade de Missouri. Mars foi projetado para ser um simulador de fácil utilização, para alunos de graduação.

bonnie
Download Presentation

Ambiente Mars

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. Ambiente Mars Prof. André Luis Meneses Silva

  2. Introdução • O simulador MIPS Mars foi desenvolvido pela universidade de Missouri. • Mars foi projetado para ser um simulador de fácil utilização, para alunos de graduação. • Não apresenta recursos de simuladores mais avançados (tal como PCSpim), porém sua interface é bem mais amigável. • Desenvolvido em Java.

  3. Aba Edit Menu de edição

  4. Programa em execução Aba Execute Registradores Memória de Dados Saída/Entrada de dados

  5. Primeiro programa • .data • hello_str: .asciiz "Hello world!" • .globl main • .text • main: • la $a0,hello_str #carrega end. do string no reg. $a0. • li $v0,4 #carrega o códigodasyscall no reg. $v0 • syscall • li $v0,10 #carrega o códigodasyscall no reg. $v0 • syscall

  6. Sintaxe do Assembler • Sintaxe do assembler: • Comentários de linhainiciam-se com #. • Identificadoressãoseqüências de caracteresalfanuméricos, _ e ., e não se iniciam com números. • Rótulossãocolocados no começo de umalinha e seguidos de :. • Númerosestãona base decimal porpadrão; se precedidospor0xsãointerpretadoscomohexadecimais. • Strings sãoenvolvidos com “”,

  7. Diretivas • Utilizadaspeloprogramadorparainstruir o assembler comotraduzir um programa. • Nãoproduzinstruções de máquina. • Principaisdiretivas: • .asciizarmazenacaracteres de um stringnamemória e finaliza-o com o caracternull; • .asciiarmazenacaracteres de um stringnamemória, masnãofinaliza-o com null; • .data<end.>armazenaositensnaseqüência no segmento de dados. Se <end.> for fornecido, os dados sãoarmazenados a partir do endereçofornecido; • .globlrótulodeclararótulocomo global, podendo ser acessado de outrosarquivos; • .textarmazenaositensnaseqüência no segmento de textos do usuário. Itensdevem ser instruções

  8. Syscall • O Mars provê alguns serviços do sistema operacional através da instrução syscall. • Para utilizar um serviço: • Carregar o código do serviço no registrador $v0; • Carregar os argumentos do serviço nos registradores $a0-$a3; • Chama a instrução syscall.

  9. Syscall

  10. Simulando um programa • Para simular um programa em Assembly: • Utilize a aba edit para escrever um programa ou • Carregar o arquivo (menu File/Open ou ícone Open), que deve ter extensão .s ou .asm. • Ir até a opção Run >> Assemble • Run >> Go ou ir até o ícone • Dá suporte a execução passo a passo através do botão • Entrada e saída do programa são fornecidas através da janela Run/IO.

  11. Simulando um programa • O Mars permite a introdução de breakpoints. • Também da suporte a retornar a execução em uma instrução (no caso de execução passo a passo).

  12. Mars • Além disso, o MARS possui muitos outros recursos... • Visualizador de estado da memória • Simulador de Cache • Floating pointing representation • Serão explorados no decorrer do curso

  13. Exercícios • Codificar todo os exemplos de aula no MARS.

  14. Referências • Mars Home Page • http://courses.missouristate.edu/KenVollmar/MARS/features.htm • Spim Home Page • http://pages.cs.wisc.edu/~larus/spim.html • Notas de aula da professora Kalina Rabbani • Em breve, disponível no site da disciplina.

More Related