Homework 3

As you are aware, we have lab assignments due every week. We also will have several homework assignments this semester, and this is one of them. While the labs are directed, the homework assignments present larger problems that you should break down into smaller problems. You should spend some time thinking about and planning your homework solutions before coding them.

Program Description

In this assignment, you are to create an assembly language program that compiles with nasm on SNOWBALL, and runs.

We have seen how to perform input and output in assembly. Refer to the recent lab on I/O. In this homework, you will expand on the input/output by making a program that filters out non-printable ASCII characters. That is, any character in the input from decimal 32 (space) up to 126 (tilde) should be copied to the output. Also copy to the output the characters at decimal values 9 and 10 (tab and line-feed). Any other character should not be copied to the output.

Try this on multiple inputs, using the pipe and redirection as shown in previous labs. Verify that this gives correct responses by redirecting the output to a file, and using xxd on it. Also try this on the file "all_values_0_to_255".

Questions

Notes: