Skip to content

EngineeringScienceBrother/ESEmbedded_HW02

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HW02

This is the hw02 sample. Please follow the steps below.

Build the Sample Program

  1. Fork this repo to your own github account.

  2. Clone the repo that you just forked.

  3. Under the hw02 dir, use:

    • make to build.

    • make clean to clean the ouput files.

  4. Extract gnu-mcu-eclipse-qemu.zip into hw02 dir. Under the path of hw02, start emulation with make qemu.

    See Lecture 02 ─ Emulation with QEMU for more details.

  5. The sample is designed to help you to distinguish the main difference between the b and the bl instructions.

    See ESEmbedded_HW02_Example for knowing how to do the observation and how to use markdown for taking notes.

Build Your Own Program

  1. Edit main.s.

  2. Make and run like the steps above.

HW02 Requirements

  1. Please modify main.s to observe the push and the pop instructions:

    Does the order of the registers in the push and the pop instructions affect the excution results?

    For example, will push {r0, r1, r2} and push {r2, r0, r1} act in the same way?

    Which register will be pushed into the stack first?

  2. You have to state how you designed the observation (code), and how you performed it.

    Just like how ESEmbedded_HW02_Example did.

  3. If there are any official data that define the rules, you can also use them as references.

  4. Push your repo to your github. (Use .gitignore to exclude the output files like object files or executable files and the qemu bin folder)


  • If you volunteer to give the presentation next week, check this.

From image png_001, we can see assembly warning us that we need to ascende the register. From image png_003, we can see assembly helping us initiavely to ascende the register.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Makefile 55.8%
  • Assembly 44.2%