Make a simple assembler for the dlx processor

Assignment Help Assembly Language
Reference no: EM131445757

Assembler Language Assignment Project

What is my assignment?

Getting Started (Items you have to review or learn to do for the project)

In order to get started on creating your assembler you must be able to have the program understand basic syntax of a text file containing a program. In this first part of the program you will deal with the basic functions of string processing and reading files. The following is a list of items to complete to help you do the project.

1) You will need to be able to read in arguments pass from the command line.
Ex: project1.exe inputfile.txt outputfile1.txt

2) You will need to be able to parse a string.
Ex: You will need to use the strtok() function in the string.h file.

3) You will need to convert all letters to lowercase letters.

4) You will need to compare a string to a list of know words.
(add, load, store, r0, r1, r2)

5) You will need to have a number in text 123 be converted to a number (integer) in the C program.

6) You will also need to be able to read and write files.

Project

Your assignment is to make a simple assembler for the DLX processor. We will simplify the assembler by only using the core instructions, we will not do the floating point instructions. The registers will be named as r0, r1, r2, ... r29, r30, r31. We will also not allow any advance naming for saving constant or memory locations the assembly source code we write will hard code any constant and memory location to read and write to. The only advance item we will do is use a label for branching and jumping in code.

Items to turn in: a report that tells how you created your program, source code, test files and a flow chart.

Tips

It is common to run an assembler in a two pass structure. The first pass goes through the source files and finds all the labels and addresses for each instruction. You can start your program by assuming the first line of code is at memory location 0. You will make a table of label and address. On the second pass you will then convert the assembly instruction into machine code and fill in any labels using your table.

What to turn in

The following is what needs to be turned in for project 1:

Report

The report is made up of the following 4 parts:

1) The first part tells me if the project was successful or unsuccessful. If unsuccessful tell me which parts work and which parts do not work.

2) I need a documentation of each function of your code. Give me the name of the function, the inputs/outputs, and a description of what the behavior of the function is.

3) Instead of a flow chart give me a written set of steps that occur in your code design, reference the names of function calls as needed. You will write is as

Step 1 - what is done in step 1

Step 2 - what is done in step 2. If you have decisions write if X occurs go to step Y.

4) Project output. I need you to write a test file that test one instruction of each type (Load, Store, Branch, ALU, ALUi, JR, J). Write out the instructions in the test file and give me a screenshot of the output. Show the output of the encoding done by hand and compare it to the encoding of your program.

Source Code

Test Files
(SubI r12,R20,255
start: lw r7,-16(R31)
SLT r3,r1,r9
BEQZ r1, STOP
SGTI r3,r7,-5
stop: sb 16(r11),r9
jalr r4
J start)

All of the files should be placed in one zip file. Name the file as P1_lastname.zip I do not want the files sent in an email. Post the file in blackboard under the Project 1 assignment. I will take off 20 points if I receive an email of your project.

Reference no: EM131445757

Questions Cloud

Furnace in a foundry keeps a room warm during winter : Heat from a furnace in a foundry keeps a room warm during the winter. However, during the summer, the combination of furnace heat and warm humid external air in the room can become difficult for workers to tolerate.
Find the nash equilibrium using backward induction : Find the Nash equilibrium using backward induction.
Describe the data presented to the operator : State the minimum number of printed-circuit cards required to construct a basic controller, naming each of the cards and produce a sketch to show the construction of the data words on the data highway.
What is the value of this annuity today : You buy an annuity that will pay you $20,000 a year for 25 years. The payments are paid on the first day of each year. What is the value of this annuity today if the discount rate is 8.5 percent? Upon graduation one year from today you expect to be e..
Make a simple assembler for the dlx processor : Your assignment is to make a simple assembler for the DLX processor. We will simplify the assembler by only using the core instructions, we will not do the floating point instructions.
Uses the proceeds to repurchase shares : Meyer & Co. expects its EBIT to be $87,000 every year forever. The firm can borrow at 12 percent. Meyer currently has no debt, and its cost of equity is 16 percent.    If the tax rate is 35 percent, what is the value of the firm? What will the value ..
Maintain fiscal accountability and control : Write a 250- to 350-word paper examining 1 of the 3 ways to maintain fiscal accountability and control (management control systems, measures of performance, and quality control) in a public service organization.
Briefly define backward induction : Modify Solomon's decision problem so that each woman actually loses the value she places on the child if she is not awarded the child. The value to the true mother is assumed to satisfy CT > 2CF .
Provide optional or discretionary benefits : All employee benefits that are not required by law are called optional or discretionary benefits. What are the broad categories of optional or discretionary benefits that employers may provide? Why do employers provide optional or discretionary b..

Reviews

Write a Review

Assembly Language Questions & Answers

  Create a assembly language subroutine

Create a assembly language subroutine MULSUM that takes an array named A containing n bytes of positive numbers, and fills two arrays, array B containing n words and array C containing n long words

  Write a function in linux assembly

Write a function in Linux assembly

  Analog measurements

Prepare an assembly program for the correctly measures the wind direction

  Design a simple digital clock

Design a simple digital clock

  Write an assembly program

Prepare an Assembly program that reads in a number of cents.

  Write an assembly language program

Write an assembly language program for encrypting alphabates of a string

  Greatest common divisor of integers-masm assembly language

Must be done in MASM assembly language: Greatest common divisor of two integers is largest integer which will evenly divide both integers. GCD algorithm involves integer division in a loop.

  Write assembly program-find right admission price to movie

Write the Assembly program to find correct admission price to movie. Price of admission to a movie is $7 for kids (under 12) and $9 for adults.

  Create simple 8-bit alu using add-subtract-shift functions

Create a simple 8-bit ALU. Requirements:The eight functions that you will implement are: add, subtract, and, or, shift left logical, less than, shift right logical.

  Write assembly program print binary representation-integers

Write the assembly program called hw6_ex1, stored in file hw6_ex1.asm. This program must prompt user to enter signed 32-bit integer. Program must print out binary representation of the integer.

  Allot op-codes and add microcode to microprogram

Allot op-codes and add microcode to microprogram of Mic-1 to implement following instructions which are then included with IJVM instruction set.

  Write mips assembly program to read two non-negative numbers

Write MIPS assembly program to repeatedly read two non-negative integers and print integer product and quotient without using multiplication and division instructions.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd