How to Program in MIPS! (QTSpim) (Beginner)

Today we learn how to program in MIPS!

Overview of assembly via Pokemon:


Open course:

(Also look up resources from UIUC and UWashington!)


Leberkas Semmel says:

I am not watching this because i want to know anything about MIPS. ARM is more useful, and quite similar to MIPS.

Also the ARM documentation is a mess, my CPU does not support cbz (compare and branch if zero) and the ARM CPU supports two instruction sets? Weired.

nimrod mpandari says:

how do you open the text editing platform

Koko Nanahji says:


YS G says:

Thank you so much! It helps me a lot to get started! My teacher never told me what the hell QtSpim was and asked me to program with it as assignments 😛 fml

Hueco Mundo says:

cant believe im paying fucking 1500 to my college when a 8 minute video sums up almost 5 hours worth of class.

wildhrushka says:

Thank you! Very well done and very helpful. Bless you and keep on doing what you do

I Am Phill says:

how do i just print a message on screen without using the .data?

SevenDeMagnus says:

Hi. Were the games made with this, much faster than the ones made in, say, C++? Thanks.

Jake Guard says:


m4nu3lf says:

Translating C code to MIPS was something we had to do on paper in one exam for my bachelor course. I really like MIPS but I think that nowadays ARM is more valuable to know. BTW what did you graduate in?

FearfulPerson says:

please make more of these. this is by far the clearest video on assembly i’ve ever seen

chamsin chamalie says:

How to write MIMPS program that collects user input, and indicates if the input is all uppercase letters or

Ian Chui says:

hi I’m learning mips at school. is there a reason to jump instead of branch? Thanks!

inXS212 says:

for thoses who wandered:
hex meant for hexadecimal which is a way of displaing data (like binary) 0xFF=255
regs meant for registers which is data storing units. regs are either 8bits, 16bits,32,64,128…

btw if you though that mips is useless nowadays … check out microchips like pics and atmel, they are still in use for better perfs in processing dont underestimate MIPS’s power. even tho it’s hard when you want to make a mario like game in MIPS.

Anker Wang says:

Could you tell me how to configure the Notepad++ to show the same syntax color as yours?

Jon Telep says:

To make it more typical I would change your C code to:

int integrations = 10;
int val = 17;
for( int i = 0; i < integrations; ++i) { val += i; } As to how you have it now integrations is never called and people would usually see int i = 0 initialized in the loop. I'd bet professors would do that to confuse students thinking you have to declare it inside the loop but the MIPS coding is correct.

Oguz Kaan Agac says:

Currently taking Computer Architecture and Organization course, this helped a lot. Thanks!

Sam C says:

That was fantastic, thanks alot

dakota townsend says:

I would love for you to make more assembly code videos! super helpful

Gwendoline N says:

Great video! For anyone working with MIPS, I’ve been using the MARS MIPS simulator and I personally like it a lot more than QTSPIM. just throwing it out there!

Anand Yadav says:

Some more examples please!! 🙂

Peter Bayley says:

In assembly it should become clear than loops and if statements are basically the same thing.

Hammi says:

what about mars ?

Liam Sullivan says:

Who cares about MIPS anymore?

Aleksandr Hovhannisyan says:

I saved that picture of Firelink Shrine to my computer back when it was posted to the Dark Souls subreddit, haha! Glad to see someone else liked it.

XnMojo says:

thank you thank you thank you. perfect content <3

Sarah Wong says:

Awesome! very clear explanation 🙂

Miracle Banks says:

subscribed. Thank you for making MIPS understandable

Amber Page says:

Thank you! This video is very helpful. 🙂

Monsieur Pickles says:

THE FUCK… I follow you for dark souls and now I find you for my MIPS class… WOW!

 Write a comment


Do you like our videos?
Do you want to see more like that?

Please click below to support us on Facebook!