Difference between revisions of "CSC270 Exercises on Assembly Language"
(Created page with "--~~~~ ---- =Learning Assembly Through Exercises= ==Exercise 1== * Write a program that uses 3 byte variables, ''a'', ''b'', and ''c''. The variable are initialized before the ...") |
(→Exercise 2) |
||
Line 9: | Line 9: | ||
==Exercise 2== | ==Exercise 2== | ||
+ | * Assemble the program of Exercise 1 | ||
+ | * How many bytes does it contain? | ||
+ | * How fast will it go from beginning to end, assuming each 6811 cycle is 1 µsecond? | ||
+ | |||
+ | ==Exercise 3== | ||
+ | * Same as Exercise 1, but for the Pentium. | ||
+ | * Assuming that the Pentium runs at a clock speed of 3 GHz, how many times could the program run on the Pentium while the same program run on the 1MHz 6811? | ||
+ | |||
+ | ==Exercise 4== | ||
+ | * We want to compute ''Y'' = ''a'' + ''b'' - ''c'' + 3, where ''Y'', ''a'', ''b'', and ''c'' are byte variables. | ||
+ | * Write the program that performs this operation. | ||
* Assemble the program | * Assemble the program | ||
− | * How many bytes | + | * Count the total number of cycles it will take to run, and the total number of bytes it will use up in RAM. |
− | * | + | |
+ | ==Exercise 5== | ||
+ | * Write a program that computes the first 5 terms of the fibonacci sequence, assuming that your program starts with 5 variables that all zero. | ||
+ | * Assemble it. | ||
+ | * How many cycles? | ||
+ | * How many bytes? | ||
+ | |||
+ | ==Pause== | ||
+ | |||
+ | * Let's learn about ''direct addressing mode'' | ||
+ | |||
+ | |||
+ | <br /> | ||
+ | <br /> | ||
+ | <br /> | ||
+ | <br /> | ||
+ | <br /> | ||
+ | <br /> | ||
+ | <br /> | ||
+ | <br /> | ||
+ | <br /> | ||
+ | <br /> | ||
+ | <br /> | ||
+ | [[Category:CSC270]][[Category:6811]][[Category:6800]][[Category:Exercises]] |
Revision as of 15:28, 27 March 2012
--D. Thiebaut 16:20, 27 March 2012 (EDT)
Contents
Learning Assembly Through Exercises
Exercise 1
- Write a program that uses 3 byte variables, a, b, and c. The variable are initialized before the program starts with the values 2, 5, and 0, respectively.
- The program will add up the contents of the variable a to that of b and store the result into c. Only c will change.
Exercise 2
- Assemble the program of Exercise 1
- How many bytes does it contain?
- How fast will it go from beginning to end, assuming each 6811 cycle is 1 µsecond?
Exercise 3
- Same as Exercise 1, but for the Pentium.
- Assuming that the Pentium runs at a clock speed of 3 GHz, how many times could the program run on the Pentium while the same program run on the 1MHz 6811?
Exercise 4
- We want to compute Y = a + b - c + 3, where Y, a, b, and c are byte variables.
- Write the program that performs this operation.
- Assemble the program
- Count the total number of cycles it will take to run, and the total number of bytes it will use up in RAM.
Exercise 5
- Write a program that computes the first 5 terms of the fibonacci sequence, assuming that your program starts with 5 variables that all zero.
- Assemble it.
- How many cycles?
- How many bytes?
Pause
- Let's learn about direct addressing mode