UMBC CMSC 313, Computer Organization & Assembly Language, Fall 2001, Section 0101

Project 0

Due: Tuesday September 25, 2001


This project is a finger-warming exercise to make sure that everyone can compile an assembly language program, run it through the debugger and submit the requisite files using the systems in place for the programming projects.


For this project, you must do the following:
  1. Modify the assembly language program 'toupper.asm' so that instead of converting lower case characters to upper case, the program converts each space in the user's input into the underscore character '_'. The source code for toupper.asm is available in: /afs/
  2. Using the UNIX script command, record some sample runs of your program and a debugging session using gdb. In this session, you should fully exercise the debugger. You must set several breakpoints, single step through some instructions, use the automatic display function and examine the contents of memory before and after processing. The script command is initiated by the command 'script'. This puts you in a new UNIX shell which records every character typed or printed to the screen. You exit from this shell by typing 'exit' at the UNIX prompt. A file named typescript is placed in the current directory.

Turning in your program

Use the UNIX 'submit' command on the GL system to turn in your project. You should submit two files: 1) the modified assembly language program and 2) the typescript file of your debugging session. The class name for submit is 'cs313' and the project name is 'proj0'. The UNIX command to do this should look something like:

submit cs313 proj0 toupper.asm typescript


Additional help on running NASM, gdb and making system calls in Linux are available on the project web page for this course.

Last Modified: 27 Nov 2001 21:03:39 EST by Richard Chang
to Fall 2001 CMSC 313 Section Homepage