CS 601 Homework 0

I'd like you to:

  1. Design a new low-level machine architecture "you86" that can express loops, do arithmetic, read and write integers outside the machine, and read and write values from an array of up to 64 values.
  2. Write a program for your new architecture that computes prime numbers up to an input value using the Sieve of Eratosthenes.
  3. Write a you86 simulator in C++ that simulates your prime-finding program on your new architecture. 
  4. Benchmark your simulator to get the actual real CPU times in nanoseconds to simulate your program as it finds primes up to N = 4, 8, 16, 32, and 64.
  5. Compute the expected big-O time performance of your simulator running your prime finder.  Does your benchmark data match your big-O time?  Why or why not?
Turn in your simulator, benchmark data, and a very short writeup on Blackboard (log in first).