This assignment is to brighten my knowledge of CPU operations and the accessing of I/O devices. A minimum programming level is therefore needed because there is a hardware system control. The package used has been designed specially to show how the effect of the program will be carried out with the changes and locations of the Memory, I/O port and the CPU. The assignment has been divided into three stages and to carryout the task, I am required to download the supplied file (assignment zip) from the blackboard site.
The first stage which requested me to use the supplied example to upgrade the example by making it performs the sequence of listed lights on both displays. To start the programme, I have been instructed to practise getting familiar with how the program is run by reading the documentation to get an overview of the capabilities of the package and then try making some simple changes to the program by moving the contents of BL to another register, or add arithmetic. I then clicked the start button then the File > Open command to load the example file (04INCJMP.ASM).
Then clicked the assemble button to assemble the program which converts it to a machine code and the resulting code is shown in the List File window. The programme has register content and memory content in a separate pop-up window. STAGE 1 To start the 02TLIGHT.ASM file was loaded, then the programme was enacted to see how the sequence at which the lights comes on and goes off.
I then referred to my lecture notes of a table showing that all codes consist of 4bits. I have assembled and run the programme and it is working perfectly. Starting my first stage was confusing because the more I try to change the code to see if any mistake has been made, the more I get it all muddled up but my seminar tutor (Toomas Plaks) guided my and I was able to finish my first stage.
In this stage the same section of code has been required of me to use but not to repeat the large block of codes all over. The programme is then modified so that the outputted data is stored in the table and a loop contained in the programme reads the code one after the other. To start stage two an example file 08TABLE.ASM which has been supplied will be use to carry out my task. I have then inserted 02 to show the start address of the data table and 09 to start all over when the programme runs to the end it will start again.
On stage two the programme is confusing because it starts with Red, Red as requested, I assemble then run but does not stop running until I request it to do so. Solving stage two was not as easy as I did stage one but with the assistance of some mates in class, I was able to sort it until this stage. In this stage, the sequence of light given is shown the table below but with only the hexadecimal codes.
Here though the codes have been inserted, the programme starts to run after the inserted codes. I am not very sure with this stage but the table below shows how I arrived at the programme performing the function requested. I am now familiar with CPU operations and the accessing of I/O devices by using a minimum programming level provided because of the hardware system control. Also the supplied package enlightens my knowledge of how the effect of the program will be carried out.
Lecture & Tutorial notes Assistance from tutor Assignment zip