PCSpim How to Program ?. Some Resource There are some useful online document! You can find the links on our TAs’ website.http://graphics.im.ntu.edu. tw/~xdd/Arc06/http://graphics.im.ntu.edu.

Slides:



Advertisements
Similar presentations
Chapter 6: Algorithmic Problem Solving 1 Chapter 6 Algorithmic Problem Solving.
Advertisements

Zhang Hongyi CSCI2100B Data Structures Tutorial 2
Eclipse[10] MIPSinEclipse. Overview Goal: To provide a friendly development environment for CS students programming in MIPS (particularly CS33 at UCLA),
Introduction to Java Lab CS110A – Lab Section 004 Instructor: Duo Wei.
CIS101 Introduction to Computing Week 11. Agenda Your questions Copy and Paste Assignment Practice Test JavaScript: Functions and Selection Lesson 06,
1 Capstone projects supervised by Yinong Chen (1) Implementation of a Shell on Palm Hand Held Device (2) Building a Programmer’s Interface to the Palm.
COMP 110 Introduction to Programming Jingdan Zhang June 20, 2007 MTWRF 9:45-11:15 am Sitterson Hall 014.
Genome Sciences 373 Genome Informatics Quiz Section #1 March 31, 2015.
1 Design and Analysis of Algorithms تصميم وتحليل الخوارزميات (311 عال) Chapter 1 Introduction to Algorithms.
CS1101: Programming Methodology Aaron Tan.
1 L07SoftwareDevelopmentMethod.pptCMSC 104, Version 8/06 Software Development Method Topics l Software Development Life Cycle Reading l Section 1.4 – 1.5.
Introducing Java.
Fall CIS 764 Database Systems Engineering L3: Two Assignments Relating to J2EE.
CSE 1340 Introduction to Computing Concepts Class 2.
Introduction CSE 1310 – Introduction to Computers and Programming
ONLINE TECHNICAL REPORT SYSTEM Team Crash Course Ryan Ashe, Eileen Balci, James Kirk, Taylor Paschal.
Confidential - © 2012 StreamWIDE © StreamWIDE
CS223 Algorithms D-Term 2013 Instructor: Mohamed Eltabakh WPI, CS Introduction Slide 1.
1 MIPS Assembly Language Programming CDA 3101 Discussion Section 03.
Welcome to CS 3260 Dennis A. Fairclough. Overview Course Canvas Web Site Course Materials Lab Assignments Homework Grading Exams Withdrawing from Class.
Computer Architecture B-tree construction & Traversal YongSoo Bae Room 236, Engineering Building [Project 1]
Instructor: Tina Tian. About me Office: RLC 203A Office Hours: Wednesday 1:30 - 4:30 PM or .
H.Melikian Introduction on C C is a high-level programming language that forms the basis to other programming languages such as C++, Perl and Java. It.
CS OPERATING SYSTEMS Project 2 Matrix Multiplication Project.
1 Project Information and Acceptance Testing Integrating Your Code Final Code Submission Acceptance Testing Other Advice and Reminders.
Chapter 11 An Introduction to Visual Basic 2008 Why Windows and Why Visual Basic How You Develop a Visual Basic Application The Different Versions of Visual.
CGS-2531 Problem Solving with Computer Software Course home page: Course.
CS 114 – Class 02 Topics  Computer programs  Using the compiler Assignments  Read pages for Thursday.  We will go to the lab on Thursday.
CSc2010 Lab Fall 2015 Bing Li. Contact  Name : Bing Li   Website : cs.gsu.edu/~bli6  Office : Suntrust.
2013 Computer Architecture Project MIPS Programming : Merge Sort ChangHyun Yun Room 236, Engineering Building.
2011 Computer Architecture Project #1 MIPS Programming: Merge Sort Ki Sup Hong Room 236, Engineering Building.
CSCI 51 Introduction to Computer Science Dr. Joshua Stough January 20, 2009.
Welcome to CS 115! Introduction to Programming. Class URL Write this down!
Files to turn in for Homework # 1 1)TimerApplet.java 2)TimerApplet.html 3)TimerSyntaxErr.java 4)TimerSemanticErr.java 5)TimerSemanticErr.html 6)HomeWork1.txt.
Principles of Computer Science I Honors Section Note Set 1 CSE 1341 – H 1.
Chapter 11 An Introduction to Visual Basic 2005 Why Windows and Why Visual Basic How You Develop a Visual Basic Application The Different Versions of Visual.
June 19, Liang-Jun Zhang MTWRF 9:45-11:15 am Sitterson Hall 011 Comp 110 Introduction to Programming.
IR Homework #1 By J. H. Wang Mar. 5, Programming Exercise #1: Indexing Goal: to build an index for a text collection using inverted files Input:
Uploading documents to the site Сlick “Add document” on the home page To send several files enable Add-on “Microsoft Office”
Chapter 1 Computers, Compilers, & Unix. Overview u Computer hardware u Unix u Computer Languages u Compilers.
Program Development C# Programming January 30, 2007 Professor J. Sciame.
Introduction to Methods Shirley Moore CS 1401 Spring 2013 cs1401spring2013.pbworks.com April 1, 2013.
Intro to SPIM Justin Fiore Nathan Parish. Installing SPIM on Windows Download pcspim.zip from the SPIM website:
1 Getting Started with C++ Part 2 Linux. 2 Getting Started on Linux Now we will look at Linux. See how to copy files between Windows and Linux Compile.
3-Apr-2006cse spim © 2006 DW Johnson and University of Washington1 SPIM simulator CSE 410, Spring 2006 Computer Systems
MIPS simulators There are 3 widely used MIPS simulators PC-SPIM, MARS, QTSPIM. PC-SPIM (the one we should use) the oldest one with poor graphics Very simple.
Software Engineering Algorithms, Compilers, & Lifecycle.
INTE 290 Summer 2015.
CMPT 201 Computer Science II for Engineers
Starter What does the following code do?
Development Environment
MIPS simulators There are 3 widely used MIPS simulators PC-SPIM, MARS, QTSPIM. PC-SPIM (the one we should use) the oldest one with poor graphics Very simple.
CS1010 Programming Methodology
CS 1150 – Lab #8 – Using Algorithms for Painting
Introduction to Visual Basic 2008 Programming
Getting Started with the Questionnaire Designer and Tester
C++ Basic Syntax – Homework Exercises
CMIS 102 Innovative Education--snaptutorial.com
Cracking the Coding Interview
Definition In simple terms, an algorithm is a series of instructions to solve a problem (complete a task) We focus on Deterministic Algorithms Under the.
Learning to Program in Python
Programming in JavaScript
t Process New 1098t System.
Programming in JavaScript
Programming in JavaScript
Programming in JavaScript
Programming in JavaScript
Learning Intention I will learn about the different types of programming errors.
Presentation transcript:

PCSpim How to Program ?

Some Resource There are some useful online document! You can find the links on our TAs’ website. tw/~xdd/Arc06/ tw/~xdd/Arc06/

Get Start Download from m.html m.html spim is a self-contained simulator that will run MIPS32 assembly language programs

Installation Unzip Execute Setup.exe Click “Next”!

Documents Download Appendix A: Assemblers, Linkers, and the SPIM Simulator (PDF).PDF Getting Starting with PCSpim (PDF). Overview of the Microsoft Windows version of spim.PDF 30/temp/spim/spim_documentation.pdf (From A Walk Through PCSPIM ) 30/temp/spim/spim_documentation.pdf

Sample A very simple Sample a/2030/temp/spim/first-spim.shttp://users.ece.gatech.edu/~sudh a/2030/temp/spim/first-spim.s From “A Walk Through PCSPIM ”

Demo Interview the PCSpim’s interface Trace the first-spim.s

Assembler Syntax Reference to Documents spim_documentation.pdf HP_AppA.pdf

Write Yourself A traditional program “Hello World!!”

Assignments There will be 2 problems and 1 extra bonus problem as your assignment. You’ll have to write the mips code for the problems and use PCSpim to execute them. You’ll have to demo your code in front of TAs.

Problem 1 Max and Min : Input : A series of Integers. Output : The biggest and smallest number among these Integers. Hint : You are not required to sort them, since you can read the integers one by one. However, your program should be able to deal with any amount of inputs.

Problem 2 Euclidean algorithm : Input : Two Integers. Output : The greatest common divisor (GCD) of the two integers. You’ll have to use Euclidean algorithm( 輾轉 相除法 ) to solve this problem. However, you can use multiple subtraction operations instead of division operations.

Bonus Problem Factorial : Input : An integer n. Output : n!. Your program should implement big integer operations. That is, you should be able to deal with numbers like 15! = Which is too big to be stored in a integer variable (or register).

Submission The deadline is 11/1. Please send your source code to TAs by E- mail before 11:59PM of that day. The file name should be your student id like B rar. If you want to submit a newer edition of your code, please rename it like B _1.rar.

Demo On the demo day you should hand in the documentation of your programs in HARD COPY. Also, you’ll have to demo your program and explain it to TAs. Grading : Program : 60% documentation : 40%

Notes You can use any resources you found on the net, or discuss with others. However, any kind of copied codes will get ZERO points. (include the “shared” one). You can TAs for any problems you encountered. But we will not help you to do your homework! We will not accept any code after the deadline. And we will not give you any points if you didn’t show up on the demo day.

Any questions ?

The End Happy Programming !!