CS401 Computer Architecture and Assembly Language


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


FINALTERM  EXAMINATION
SPRING 2007
CS401 - COMPUTER ARCHITECTURE AND ASSEMBLY LANGUAGE PROGRAMMING (Session - 5 )

Marks: 65
Time: 150min


StudentID/LoginID:
______________________________
Student Name:
______________________________
Center Name/Code:
______________________________
Exam Date:
Wednesday, July 18, 2007



Please read the following instructions carefully before attempting any of the questions:
1. Paper contains 15 questions in all, 10 MCQs and 5 subjective, attempt all questions. Marks are written adjacent to each question.
2.  Do not ask any question about the contents of this paper from any one.
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.
c.   Write all steps/instruction for a program, missing steps/instructions may lead to deduction of marks.
 3.   Exam is Closed Book. No handouts or reference material is allowed in exam hall other than rough sheet which will be provided by the examiner.
4.   All the coding language should be based on NASM assembler.
5.   No assembly software is allowed in the exam center.
6.   Use of cell phone during the examination is strictly prohibited, otherwise strict disciplinary action will be taken as per university rules.



For Teacher's use only
Question
1
2
3
4
5
6
7
8
9
10
Total
Marks











Question
11
12
13
14
15






Marks











Question









          

Marks














Question No: 1    ( Marks: 1 )     -  Please choose one

Sun SPARC Processor has a fixed ______________ instruction size.





16bit



32bit



64bit



20bit

Question No: 2    ( Marks: 1 )     -  Please choose one

When the subprogram finishes, the ____________________ retrieves the return address from the stack and transfers control to that location.





RET instruction



CALL instruction



POP instruction



Jump instruction

Question No: 3    ( Marks: 1 )     -  Please choose one

A 32 bit address register can access upto __________ of memory.





1 GB



6 GB



4 GB



2 GB

Question No: 4    ( Marks: 1 )     -  Please choose one

The value of a segment register when the processor is running under protected mode is called ___________________________





segment descriptor



segment selector



global descriptor table



protected register

Question No: 5    ( Marks: 1 )     -  Please choose one

FS and GS are two ___________________ in protected mode.





segment registers



segment selectors



stack pointers



register pointers

Question No: 6    ( Marks: 1 )     -  Please choose one

IRQ 0 interrupt have _______________ priority





low



medium



highest



lowest

Question No: 7    ( Marks: 1 )     -  Please choose one

IDT stands for ______________________.





interrupt descriptor table



individual descriptor table



inline data table



interrupt descriptor table

Question No: 8    ( Marks: 1 )     -  Please choose one

Every bit of line status in serial port conveys _____________ information.





different



same



partial



full

Question No: 9    ( Marks: 1 )     -  Please choose one

There are total _______________ bytes in a standard floppy disk.





1444k



1440k



1280k



2480k

Question No: 10    ( Marks: 1 )     -  Please choose one

An 8x16 font is stored in _________________ bytes.





8



16



4



20

Question No: 11    ( Marks: 10 )

Give answers to these questions. .                                [ 3+4+3]
1.      Differentiate hardware and software interrupts?
2.   Give an example of the priority mechanism in the programmable interrupt controller?
3.   Why memory must be freed using explicit calls to DOS before executing a program?


Question No: 12    ( Marks: 15 )

Part a)
Calculate the physical memory address generated by the following segment offset pairs.        [2 x 2.5]

a.       1DDDh:0436h
b.      1234h:7920h

Part b)
Fill out the corresponding values in HEX in the register table after the execution of each instruction. Every instruction is dependent on the previous instruction and carry flag is reset in the start.                                                                                              [2 x 5]

Instructions
   Al
      Carry Flag
mov al,0x005D


Shr al,0x0003


Mov al,0x003C


Sar al,0x0006


mov ax,0x12D4

















Question No: 13    ( Marks: 10 )

Which BIOS interrupt provides serial port services and list down names of 9 pins of DB-9 connector.                   [10]

Question No: 14    ( Marks: 10 )

Write a program to print your full name followed by your student ID using bios services.              [10]

Question No: 15    ( Marks: 10 )

Describe the following descriptors. Give its type and the value of all their fields:
dd 01234567h, 789ABCDEh




Author

Written by Admin

Aliquam molestie ligula vitae nunc lobortis dictum varius tellus porttitor. Suspendisse vehicula diam a ligula malesuada a pellentesque turpis facilisis. Vestibulum a urna elit. Nulla bibendum dolor suscipit tortor euismod eu laoreet odio facilisis.

0 comments: