Skip to content

Implementation of an assembler, a target-architecture independent linker, and an emulator for an abstract computer system. Includes tools for assembling, linking, and running programs.

Notifications You must be signed in to change notification settings

zakaneki/system-software-toolchain

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Project: Assembler, Linker, and Emulator for an Abstract Computer System

The goal of this project is to implement a toolchain (assembler and linker) and an emulator for an abstract computer system. The assembler is specific to the defined abstract computer system, while the linker is designed to be target-architecture independent.

Building

To build the project, use the provided Makefile:

make

This will create the following executables:

  • asembler
  • linker
  • emulator

Running

The start.sh script demonstrates how to assemble, link, and emulate a sample program:

./start.sh

This script will:

  1. Assemble the .s files in the tests/ directory (e.g., tests/main.s, tests/handler.s, tests/isr_terminal.s, tests/isr_timer.s) into object files (.o).
  2. Link the object files into a program.hex file.
  3. Run the program.hex file with the emulator.

About

Implementation of an assembler, a target-architecture independent linker, and an emulator for an abstract computer system. Includes tools for assembling, linking, and running programs.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published