0 ratings 0% found this document useful (0 votes) 8 views 5 pages Systems Programming Tutorial
The document outlines the examination details for the Systems Programming Theory paper at Nkumba University, including instructions, examination period, and question structure. It consists of compulsory and optional sections covering various topics related to systems programming, microprocessors, and assembly language. The document also includes specific questions and tasks related to programming and computer components.
AI-enhanced title and description
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content,
claim it here .
Available Formats
Download as PDF or read online on Scribd
Carousel Previous Carousel Next
Save Systems programming tutorial For Later Nkumba University
SCHOOL OF COMPUTING & INFORMATICS
END OF AUGUST 2023 SEMESTER EXAMINATIONS
(Exam period: Nov 20™ 2023 to 10™ Dec 2023)
PAPER 5 SYSTEMS PROGRAMMING(THEORY)
LEVEL : DEGREE/DIPLOMA
STUDY SESSION : DAY
VENUE : MAIN
TIME : 3 HOURS
INSTRUCTIONS:
1, SECTION A IS COMPULSORY. Attempt THREE(3) questions in section
B.
2. Do not write anything on this Question Paper.
3. All rough work must be done on the second last page of the booklet and
clearly indicated “ROUGH WORK”.
4. Read the QUESTIONS and INSTRUCTIONS carefully before attempting to
answer.
5, Write clearly in BLUE or BLACK ink and always cite examples and cases
where applicable. A pencil can only be used for diagrams.
6. Nkumba University examinations are conducted in accordance with the
Nkumba University Senate General Rules and Regulations 2009.
Breach of the above regulation, irregularity, or any other contravention of
the examination regulations will automatically lead to disqualification
and/or subsequent disciplinary action by University Senate.SECTION A
a) Explain briefly what you understand by the term Systems Programming [2 marks)
b) Explain the uses of any two (2) Systems software: [2 marks)
©) Briefly explain the uses of the following computer components: [4 marks)
() CPU (ii) Memory (iii) Registers (iv) System buses
4) Compilers, Assemblers and Interpreters are all Language Processors; how do they differ?
[3 marks]
¢) Explain the following underlined terms in the following statements:
(i) The Intel 8085 Microprocessor is Time Multiplexed [2 marks]
(i) The Z80 Microprocessor is an 8-bit machine [2 marks]
f) Use examples to help you explain any 3 addressing modes for the Intel 8085 microprocessor.
[3 marks]
g) Explain briefly:
(i) The Format of a Machine Language instruction (2 marks]
(ii) The Format of an Assembler Language instruction. [2 marks]
h) Write an assembly code for the expression “ANS = X+¥”, [4 marks]
i) What do you understand by Program Assembling? [2 marks]
i) Explain any four directives used by the SIC/XE machine. [4 marks]
k) Write in full and explain the use of the following: [2 marks@]
@ SYMTAB
Gi) OPTAB
ii) ~~ LOCCTR
(iv) LITTABSECTION B
|. (a) Briefly explain the uses of the components of the of the Control Unit of a typical
microprocessor.
(i) The Program Counter (PC)
ii) Instruction Register (IR)
(iii) Stack Pointer (SP):
(2 marks @)]
(b) (i) What is an interface [1 mark]
(ii) Give three (3) functions of the 1/0 interface [3 marks]
(iii) Give three (3) functions of the memory interface. [3 marks]
(©) Give and explain the components of the Processor Status Word for the Inte! 8085
microprocessor [3 marks]
(d) A snapshot of the Processor Status Word (PSW) for the Intel 8085 microprocessor was taken
and it was found to contain the Hexadecimal Number AS. (base 16) Explain what this
means? (4 marks]
2. Given below is a program PROG that has been written using the SIC/XE machine.
LDT NUM
LDA ALPHA
ADDR T,A
SUB #8
STA SUMI
LDA GAMMA
ADDR: TA
SUB #12
STA SUM2
ALPHA RESW 1
SUMI RESW 1
GAMMA RESW 1
SUM2 RESW a.
NUM RESWI1 1
(i) Study the program carefully and write mathematical expressions that correspond to the given
code. [2 marks]
(i) Assuming that it is to be loaded in memory from 0058H, generate the corresponding addresses
for each instruction and write the corresponding machine code. The operation codes for the
instructions are LDT = 74, LDA = 00, ADDR = 90, SUB = 1C, STA = 0C and the addresses
for registers A and T are 0 and 5 respectively. [12 marks]
(iii) Write the corresponding text listing for the generated machine instructions.
[6 marks](@) Explain the following: (2 marks]
@ — Amnemonie (ii) A directive
(b) Use examples to explain the differences between the following directives: [3 marks}
iO: Ds DB qi) “DW
© (Given the statement MYNUMS: DB ‘AB’, 10010010B", SDH
‘Show how these numbers will be loaded in consecutive memory locations.
[4 marks]
(ii) Show how the memory will be loaded when the following Directive is given:
MAK: DB S616, 2110, ‘A, B’, 100001012 [4 marks]
(d) Assume the following statements in C Language: int x; and x = 3;
(What do they mean? [1 mark]
(ii) Write corresponding Assembler Language statements for the Intel 8085
microprocessor. [3 marks]
‘Write corresponding Assembler Language statements for the SIC/XE
microprocessor [3 marks]
4(a) Assume that the registers X, PC and B are loaded with values 20016, 40016, and 60015
respectively and that the memory locations 60016, 8001s, A00ic, DOOis and 100016 are loaded
with values DO0is, A00i6, 60016, 80016 and 300;6 respectively. For each of the following
instructions, calculate the target address and give the operand that is loaded into the
accumulator. X=20016, PC=400i6 B= 600i6
DOO A00 ‘600 800 300
600 800 A00 bao 1000
@ 03200 [4 marks]
Gi) 012400 [4 marks]
Gi) 022200 [4 marks]
(0) How would the following base ten numbers be represented in the SIC/XE machine?
i. 3010 [2 marks]
ii, 3010 [2 marks]
iii, -30.7510 [2 marks]Assume the following Intel 8085 Instruction Formats:
Register to register transfer Load accumulator from memory
01/00. 3, 5 rere)
Opcode Destination Source Tow order Address
Register Register
Add immediate Data to Register A Store accumulator contents to memory
72000120 oO Oz 10010
Tow order Address
Subtract a register from the accumulator
zoo10ssS
Jump to a given address if answer is Zero
dioororo
Tow order Address
Write a machine language program (consecutive instructions) for the INTEL 8085 machine
that:
(a) picks a number from a memory location ABS6H, adds a number six (6) to the picked
number and stores a copy of the answer in register B and another copy in memory at a
location 4567H. [8 marks}
(b) picks two numbers NUMI, and NUM2 from memory locations ABCDH and S67AH
respectively, it subtracts the first number from the second number, and stores one copy
of the answer in register C and another copy to a memory location 1234H; it then
continues execution from memory location 3478H if the answer is zero. Write your
instructions in Hexadecimal. {12 marks]