Attention: Dear visitors If you find any answer or something wrong on allvirtuals.blogspot.com plz feel free to contact me ali.hse123@gmail.com or leave comments
Showing posts with label CS401 Mid Term sloved. Show all posts
Showing posts with label CS401 Mid Term sloved. Show all posts

Saturday, 19 November 2011

CS401 Mid Term solved



Stack is a ______ that behaves in a first in last out manner.
·        Program 
·        data structure 
·        Heap 
·        None of the Given 

The physical address of the stack is obtained by
·        SS:SI combination 
·        SS:SP combination
·        ES:BP combination
·        ES:SP combination   

Foreground and background parameter will be
·        32bits
·        16bits
·        8bits
·        4bits

The clear screen operation initialize whole block of memory
·        0741
·        0417
·        0714
·        0174

 In STOSB instruction, when DF is Set, SI is

·        Incremented by 1
·        Incremented by 2
·        Decremented by 1 (Not confirmed)
·        Decremented by 2

 Assembly language is:
·        Low-level programming language
·        High-level programming language
·        Also known as machine language
·        Not considered closer to the computer

A 32 Bit processor has accumulator of ---------
·        8 bit
·        16 bit
·        32 bit
·        64 bit

To transfer control back the RET instruction take
·        1 argument
·        1 argument
·        3 arguments
·        No arguments

RET is executed, it recovers the values from
·        Register
·        Stack
·        Data segment
·        Code segment

To convert any digit to its ASCII representation
·        Add 0x30 in the digit
·        Subtract 0x30 from the digit
·        Add 0x61 in the digit
·        Subtract 0x61 from the digit

The prevalent convention in most high level languages is stack clearing by the
·        Caller
·        Callee
·        RET
·        Stack

After execution of JCXZ instruction CX will changed with flag affect.
·        CF
·        OF
·        DF
·        None of Above

Execution of the instruction “mov word [ES : 0],  0x0741” will print
·        “A” appear on the top left of screen
·        “A” appear on the top right of screen
·        “A” appear on the center of screen
·        “A” appear on the bottom left of screen

if contains decimal -2 and BX contains decimal 2 then after the execution of instructions:
CMP  AX, BX
JA label
·        Jump will be taken
·        Zero flag will set
·        ZF will contain value -4
·        Jump will not be taken

Which of the following options contain the set of instructions to open a window to  the video memory?
·        mov AX, 0xb008
mov ES, AX
·        mov AX, 0xb800
mov ES, AX
·        mov AX, 0x8b00
mov ES, AX
·        mov AX, 0x800b
mov ES, AX

If D is “35” is shift to left 2 bits the new value
·        35
·        70
·        140
·        17
Execution of the instruction “mov word [ES : 0],  0x1230” will print the character color will
·        Grean
·        White
·        Red
·        Black

Q#21 Mark 2
What are the instructions used by assembly language for permanent and temporary diversions.

Q#22 Mark 2
Which instruction is used to determine zero bit in string.

Q#23 Mark 3
Explain the use of TEST instruction.
The test instruction is used for bit testing. BX holds the mask and in every next iteration it is shifting left, as our concerned bit is now the next bit.

Q#24 Mark 3
Explain LES and LDS

The string instructions need source and destination in the form of a segment offset pair. LES and LDS load a segment register and a general purpose register from two consecutive memory locations. LES loads ES while LDS loads DS. Both instructions has two parameters, one is the general purpose register to be loaded and the other is the memory location from which to load these registers. The major application of these instructions is when a subroutine receives a segment offset pair as an argument and the pair is to be loaded in a segment and an offset register.

Q#25 Mark 5
Describe local variables.
Another important role of the stack is in the creation of local variables that are only needed while the subroutine is in execution and not afterwards. They should not take permanent space like global variables. Local variables should be created when the subroutine is called and discarded afterwards. So that the spaced used by them can be reused for the local variables of another subroutine. They only have meaning inside the subroutine and no meaning outside it.
The most convenient place to store these variables is the stack. We need some special manipulation of the stack for this task. We need to produce a gap in the stack for our variables. This is explained with the help of the swapflag in the bubble sort example.
The swapflag we have declared as a word occupying space permanently is only needed by the bubble sort subroutine and should be a local variable. Actually the variable was introduced with the intent of making it a local variable at this time. The stack pointer will be decremented by an extra two bytes thereby producing a gap in which a word can reside. This gap will be used for our temporary, local, or automatic variable; however we name it. We can decrement it as much as we want producing the desired space, however
the decrement must be by an even number, as the unit of stack operation is a word. In our case we needed just one word. Also the most convenient position for this gap is immediately after saving the value of SP in BP. So that the same base pointer can be used to access the local variables as well; this time using negative offsets. The standard way to start a subroutine which needs to access parameters and has local variables is as under.
push bp
mov bp, sp
sub sp, 2
 The gap could have been created with a dummy push, but the subtraction makes it clear that the value pushed is not important and the gap will be used for our local variable. Also gap of any size can be created in a single instruction with subtraction. The parameters can still be accessed at bp+4 and bp+6 and the swapflag can be accessed at bp-2. The subtraction in SP was after taking the snapshot; therefore BP is above the parameters but below the local variables. The parameters are therefore accessed using
positive offsets from BP and the local variables are accessed using negative offsets.


Q#26 Mark 5
Describe MOVS and CMPS instructions

By HSE with No comments

CS401 Mid Term solved


Question No: 1    ( Marks: 1 )    - Please choose one
 After the execution of SAR instruction

       The msb is replaced by a 0

       The msb is replaced by 1

       The msb retains its original value

       The msb is replaced by the value of CF

   
Question No: 2    ( Marks: 1 )    - Please choose one
 RETF will pop the offset in the
       BP
       IP
       SP
       SI
   
Question No: 3    ( Marks: 1 )    - Please choose one
 The routine that executes in response to an INT instruction  is called

       ISR

       IRS

       ISP

       IRT

   
Question No: 4    ( Marks: 1 )    - Please choose one
 The first instruction of “COM” file must be at offset:
       0x0010
       0x0100
       0x1000
       0x0000
   
Question No: 5    ( Marks: 1 )    - Please choose one
 “Far” jump is not position relative but is _______________
        memory   dependent 
       Absolute
       temporary
       indirect

   
Question No: 6    ( Marks: 1 )    - Please choose one
 Only ___________ instructions allow moving data from memory to memory.

       string
       word
       indirect
       stack
   
Question No: 7    ( Marks: 1 )    - Please choose one
 After the execution of instruction “RET 2”

       SP is incremented by 2

       SP is decremented by 2

       SP is incremented by 4

       SP is decremented by 4

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

       Two forms

       Three forms

       Four forms

       Five forms

   
Question No: 9    ( Marks: 1 )    - Please choose one
 When the operand of DIV instruction is of 16 bits then implied dividend will be of

       8 bits              
       16 bits              
       32 bits                  
       64 bits

   
Question No: 10    ( Marks: 1 )    - Please choose one
 After the execution of MOVS instruction which of the following registers are updated
       SI only

       DI only

       SI and DI only

       SI, DI and BP only

   
Question No: 11    ( Marks: 1 )    - Please choose one
 In 8088 architecture, whenever an element is pushed on the stack
       SP is decremented by 1
       SP is decremented by 2
       SP is decremented by 3
       SP is decremented by 4
   
Question No: 12    ( Marks: 1 )    - Please choose one
 When a very large number is divided by very small number so that the quotient is larger than the space provided, this is called

       Divide logical error

       Divide overflow error

       Divide syntax error

       An illegal instruction

   
Question No: 13    ( Marks: 1 )    - Please choose one
 In the word designated for one screen location, the higher address contains

       The character code
       The attribute byte
       The parameters
       The dimensions
   
Question No: 14    ( Marks: 1 )    - Please choose one
 Which of the following options contain the set of instructions to open a window to  the video memory?
       mov AX, 0xb008
mov ES, AX
       mov AX, 0xb800
mov ES, AX
       mov AX, 0x8b00
mov ES, AX
       mov AX, 0x800b
mov ES, AX
   
Question No: 15    ( Marks: 1 )    - Please choose one
 In a video memory, each screen location corresponds to
       One byte
       Two bytes
       Four bytes
       Eight bytes
   
Question No: 16    ( Marks: 1 )    - Please choose one
 The execution of the instruction “mov word [ES : 0],  0x0741” will print character  “A” on screen , background color of the screen will be

       Black

       White

       Red

       Blue 

. Serial Port is also accessible via       I/O      ports ,        COM 1     is accessible via ports 3F8-3FF while     COM 2     is accessible via 2F8 -2FF.

The first register at 3F8 is the    Transmitter   holding register if written to and the receiver    buffer   register if read from.

Other register of our interest include 3F9 whose      Bit  0   must be set to enable received data available interrupt and    Bit    1     must be set to enable transmitter holding register empty interrupt.
(Transmitter, COM 1, I/O ports , COM2. bit 0 , Buffer , 3FA)

By HSE with No comments