www.vupages.com
CS401 Computer Architecture and Assembly Language
Programming
Final Term Examination - February 2005
Time Allowed: 150 Minutes
Instructions
Please read the following instructions carefully before attempting any question:
1. The duration of this examination is 120 minutes.
2. This examination is open Handouts.
3. Answer all questions.
a. There is no choice.
b. You will have to answer correctly all questions in this examination to get the
maximum possible marks.
4. Do not ask any questions about the contents of this examination from anyone.
a. If you think that there is something wrong with any of the questions, attempt it to
the best of your understanding.
b. If you believe that some essential piece of information is missing, make an
appropriate assumption and use it to solve the problem.
5. You have been provided with all assembly tools so you can use assembly tools also.
6. Your paper contains 4 questions.
All Coding questions should be answered using the Assembly language syntax.
Total Marks: 60 Total
Questions: 4
Question No. 1 Marks : 10
Answer the following Questions briefly.
a. What is the change in the stack after int instructions is executed?
b. Why procedures are used and what must be the last executable instruction in a
procedure?
c. Why cli and sti instructions are used during hooking an interrupt?
d. What is multitasking?
e. What are minimum numbers of pins required for serial communication? Also write
their names?
Question No. 2 Marks : 10
Write valid instruction(s) to perform each function specified below.
a. Provide instruction(s) to read a value from port number 0x312.
b. Provide instruction(s) to move the value at the top of stack in ip register.
c. Provide instruction(s) to move value of flag register in ax.
d. Provide instruction(s) to divide value of ax by 8.
e. Provide instruction(s) to write value of al at the port 0x12.
Question No. 3 Marks : 10
Write a function "ConvertBinaryToDecimal" that takes the address of a string containing
binary of any decimal number via the stack. The function should print its equivalent decimal
number. For example, if the string is "11011" then after the execution of this function, the
program should print 27 and if the string is "1001" then after the execution of this function, the
program should print 9 on the screen.
(Well commented and well indented program will be given extra mark)
Question No. 4 Marks : 10
Answer the following regarding Protected Mode descriptors
a. Write the following descriptors in the format
dd 0x0000FFFF, 0x00CF9A00
Assume following values for attributes
1 A bit = 0
2 P bit = 1
3 G bit = 0
4 AVL bit = 1
5 r bit = 0
i. 32 bit, non conforming, execute-only code segment at level 2, with base at
0x00403333 and a limit of 0x0FFFF.
ii. 32-bit Read only data segment at level 0, with base at 0x00A0BBBB and limit of
0x1CCCC.
b. Write 32 bit physical addresses for the following accesses where Base = 0x00A00000
and Limit = 0x30000, EBX contains 0x00001000, and ESI contains 0x00003000
i. [bx+si]
ii.[ebx+esi-0x0012FD]
www.vupages.com
CS401 Computer Architecture and Assembly
Language Programming
Final Term Examination – Spring 2005
Time Allowed: 150 Minutes
Instructions
Please read the following instructions carefully before attempting any question:
1. The duration of this examination is 150 minutes.
2. This examination is open Handouts.
3. Answer all questions.
a. There is no choice.
b. You will have to answer correctly all questions in this
examination to get the maximum possible marks.
4. Do not ask any questions about the contents of this examination
from anyone.
a. If you think that there is something wrong with any of the
questions, attempt it to the best of your understanding.
b. If you believe that some essential piece of information is
missing, make an appropriate assumption and use it to solve
the problem.
5. You have been provided with all assembly tools so you can use
assembly tools also.
6. Your paper contains 4 questions.
All Coding questions should be answered using the Assembly language
syntax.
Best of Luck
Total Marks: 50 Total Questions: 04
Question No. 1 Marks : 10
Answer the following regarding protected mode descriptors:
Write the values of limit A bit , P bit and AVL bit of the following descriptors.
1. dd 0x 00FEADEF , 0x 00B60718
2. dd 0x F8E2135A , 0 x 13DC1258
Question No. 2 Marks : 10
Give the short answer of the following:
1. Why we need to disable the interrupts while calling interrupt INT 80hj.
2. Why we need to disable interrupts before we attempt to change the stack (i.e. ss
and sp).
Question No. 3 Marks : 10
I. Consider the following code:
What would be in the variable Find after the execution of the code
given below?
;;-------------------------------------------------------------------------------------------------------------------------------
----
[org 0x0100]
mov cx, [num1]
mov ax, 0
l1: add ax, cx
sub cx, 1
jnz l1
mov [Find], ax
mov ax, 0x4c00
int 0x21
num1: dw 15
Find: dw 0
;;------------------------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------
II. Consider the following code:
What will be the values in num1 and num2 after the execution of the
code given below?
;;------------------------------------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------
[org 0x0100]
mov ax, [num1]
mov bx, [num2]
add ax, bx sub bx, ax
add ax, bx
mov ax, 0x4c00
int 0x21
num1: dw 5
num2: dw 10
;;------------------------------------------------------------------------------------------------------------------------------------------------------
-------------------------------------------
Question No. 4 Marks : 20
Write a function "ShowResult" that takes the address of two memory locations via the
stack, the one pushed first is the address of an array of integers and the second is the
length of that array. The function should print "Yes" if the array is in ascending order and
"No" if it is not.
Some sample output is shown below,
If array is: Output
5 7 9 13 Yes
15 7 19 13 No
CS401
Final Term Examination – Spring 2006
Time Allowed: 150 Minutes
Marks : 1
Int u by
3. Programmer
gram. Also, write comments in front of
each instruction describing the purpose of that particular instruction.
rg 0x0100]
ttribute: dw 0x07
ush ax
, 91
je clrscr
], 0
Question No. 1
err pt Flag is set
1. Processor
2. Organization
4. Any one can set
Question No. 2 Marks : 3
Explain the purpose and working of the following pro
[o
jmp start
count: dw 0
a
second: dw 0
timer: push di
push cx
p
push es
inc word[cs:count]
cmp word[cs:count]
jmp exit
clrscr: mov word[cs:count
mov ax, 0xb800
WWW.VUPages.Com
Connecting VU Students mov es, ax
xor di, di
te], 0x10
cmp word[cs:attribute], 0x77
7
te]
cld
xit: mov al, 0x20
0, al
pop di
iret
4], timer
mov [es:8*4+2], cs
art
mov ax, 0x3100
int 0x21
AL after each of the
llowing instructions is executed.
Assum ing initial conditions for each part of this question
mov al, 0x20
add word[cs:attribu
jbe next
mov word[cs:attribute], 0x0
next: mov ah, [cs:attribu
mov cx, 2000
rep stosw
e
out 0x2
pop es
pop ax
pop cx
start: xor ax, ax
mov es, ax
cli
mov word [es:8*
sti
mov dx, st
add dx, 15
mov cl, 4
shr dx, cl
Question No. 3 Marks : 3
Suppose AL contains 11001011b and CF= 1. Give the new contents of
fo
e the preced
a. SHL AL,1
b. SHR AL, 1
c. ROL AL, CL if CL contains 2 d. SAR AL, CL if CL contains 2
Marks : 1
Which flag has a special role in debugging?
on Flag
Marks : 1
code and tell what will be the final effect on bp value
mov bp, sp
2. Value of sp will move to bp
n sp
uesti . 6 Marks : 1
UL and IDIV operate on
rs
s
. All of the given options
Marks : 1
The siz ctor register in protected mode is
f the given options
Marks : 1
Ans
e. RCR A
L,CL if CL contains 3
Question No. 4
1. Sign Flag
2. Trap Flag
3. interrupt F
4. Directi
lag
Question No. 5
Read the following
push bp
mov bp, sp
sub sp, 2
pop bp
1. bp will retain its original value
3. Value of bp will be less the
4. Val
ue of bp will be zero
Q on No
IM
1. Two's-complement numbe
2. One's-complement number
3
4. None of the given options
Question No. 7
e of sele
1. 32 bits
2. 24 bits
3. 16 bits
4. None o
Question No. 8
wer the following questions: a. Which processor interrupts the system 18.2 times per second? What are some of its
c. hardware interrupt is executed?
e execution to whatever it
was doing before the interrupt was triggered?
e. At which address is the interrupt vector for INT 10h stored?
Marks : 1
Write t
00 and a
0FFFF.
0x10000.
ssume the values for the attributes bits are A=1, AVL=0, P=1, r=0, G=0, D=1, E=0 and B=1.
practical uses?
b. What is difference between the fault and trap exception?
When a key is pressed on the keyboard, which
d. When an interrupt handler finishes, how does the CPU resum
Question No. 9
he following descriptors in the format: dd 0x0000FFFF, 0x00CD9A40
i. 32 bit nonconforming, readable code segment at level 0, with base at 0x003000
limit of 0x
ii. 32 bit writeable data segment at level 2, with base at 0x00B00000 and limit of
A
Largest Online Community of VU Students
|
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Question No: 1 ( Marks: 1 ) -
Please choose one
|
||||||||||||||||||||
|
||||||||||||||||||||
Question No: 2 ( Marks: 1 ) -
Please choose one
|
||||||||||||||||||||
|
||||||||||||||||||||
Question No: 3 ( Marks: 1 ) -
Please choose one
|
||||||||||||||||||||
|
||||||||||||||||||||
Question No: 4 ( Marks: 1 ) -
Please choose one
|
||||||||||||||||||||
|
||||||||||||||||||||
Question No: 5 ( Marks: 1 ) -
Please choose one
|
||||||||||||||||||||
|
||||||||||||||||||||
Question No: 6 ( Marks: 1 ) -
Please choose one
|
||||||||||||||||||||
|
||||||||||||||||||||
Question No: 7 ( Marks: 1 ) -
Please choose one
|
||||||||||||||||||||
|
||||||||||||||||||||
Question No: 8 ( Marks: 1 ) -
Please choose one
|
||||||||||||||||||||
|
||||||||||||||||||||
Question No: 9 ( Marks: 1 ) -
Please choose one
|
||||||||||||||||||||
|
||||||||||||||||||||
Question No: 10 ( Marks: 1 ) -
Please choose one
|
||||||||||||||||||||
|
||||||||||||||||||||
Question No: 11 ( Marks: 10 )
|
||||||||||||||||||||
|
||||||||||||||||||||
Question No: 12 ( Marks: 15 )
|
||||||||||||||||||||
|
||||||||||||||||||||
Question No: 13 ( Marks: 10 )
|
||||||||||||||||||||
|
||||||||||||||||||||
Question No: 14 ( Marks: 10 )
|
||||||||||||||||||||
|
||||||||||||||||||||
Question No: 15 ( Marks: 10 )
|
||||||||||||||||||||
|
0 comments: