Find Jobs
Hire Freelancers

I need help with writing my program

$10-30 USD

Closed
Posted over 2 years ago

$10-30 USD

Paid on delivery
Your task for this lab is to write a program that extends the simulation of the ARM processor and includes stack operations. The program will have an array that represents the general ARM registers, and a second multi-dimensional array that represents memory. The program must also have allocated stack space within the memory array. The program will read content into the memory array from a file, execute the instructions it finds in the array one instruction at a time, and print the contents of the registers (including a program counter) and stack after each instruction. Note, when printing the stack do not print anything below the stack pointer, or above your stack base. 1 The program will implement the following instructions: ADD, ADDI, SUBI, LDUR, STUR, B, BL, BR. And at least on Conditional Branch instruction. 2 Instructions in memory will use the assembly mnemonics rather than binary op codes. 3 Instruction arguments will be register aliases (ex. X0, X1, X2, …) memory locations in the memory array (100, 104, …), or immediate values (#-3, #5, #0, …). 4 The program should use the specific address - 200, as the default address for the start instructions in memory. 5 Load and store instructions will only use indirect addressing (ie. [Xn, #nn] ). 6 Branch instructions will use immediate or register addressing. 7 The program can limit the number of registers available for use in the program. At least 8 must be available, including X0, X1, X9, X10, SP (X28), LR (X30). Additional registers may be implemented. 8 Data will be signed integers. 9 The Stack: The stack must be at least 100 words deep. Make sure your stack will not grow over your program/data area. The program must have a check and a “Ran out of Stack Space/Stack Overflow” error message. Choose a high memory area for the stack. The stack should grow down. Stack memory locations should be on double word boundaries (increment/decrement by 8). Remember to initiate the stack pointer (SP) to the top of the stack. 10 Use BR XZR to halt the program. Test Files: Students will create an input file to test their emulator. The program must be able to read the name of the file as an argument. Students may include a default filename for use if the argument is not used. The instructions in the file to be executed must include: At least one example of each instruction implemented. At least 12 instructions. Instructions to complete at least one loop. At least one push and pop on the stack. At least one function call. The file format will be the same as the previous program. A different file will be used to test the programs. The TA’s have a program that calculates the sum of a series of numbers from 1 to N using recursion. Your test program need not do that same function, but should test the functionality used. Output The output of the program will be a listing showing: The current instruction The values of any registers used in that instruction. Including the Program Counter. The portion of the stack which is in use – (note: this may be limited to the current stack frame). Additional information, such as the value of all registers, or other useful items may be shown as well.
Project ID: 31950775

About the project

2 proposals
Remote project
Active 2 yrs ago

Looking to make some money?

Benefits of bidding on Freelancer

Set your budget and timeframe
Get paid for your work
Outline your proposal
It's free to sign up and bid on jobs
2 freelancers are bidding on average $25 USD for this job
User Avatar
PHD IN SOFTWARE DEVELOPMENT AND ARCHITECTURE. EXPERT IN ABOVE NAMED SKILLS. HELLO DEAR CLIENT! Thank you for sharing your project details, I have read and understood them. Am interested in your project and I would like to take part in making it a success. Please consider me. I will work to your satisfaction by providing the best quality and communicate throughout the project. Please send me a message we discuss more about your project. CHEERS.
$25 USD in 7 days
1.6 (2 reviews)
2.5
2.5
User Avatar
i am having more then 10 years of experience in Microprocessor & Microcontroller. i also have reach knowledge in field basic electronics,digital electronics ,power electronics,PCB Design, measurements and instruments , 8051, AVR 8515, ARM,STM32 Microcontroller , arduino , Raspberry Pi with assembly language and C language .i am a professor in field of Embedded system design. Recently i designed ammonia gas detector with 0.001% accuracy. i have done more then 200 projects in Embedded Systems many more. so it is my pleasure to work with you. contact no +1 403 486 0006
$25 USD in 1 day
5.0 (1 review)
0.0
0.0

About the client

Flag of UNITED STATES
Bellingham, United States
0.0
0
Member since Oct 28, 2021

Client Verification

Thanks! We’ve emailed you a link to claim your free credit.
Something went wrong while sending your email. Please try again.
Registered Users Total Jobs Posted
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Loading preview
Permission granted for Geolocation.
Your login session has expired and you have been logged out. Please log in again.