You are on page 1of 7

SYSTEM SOFTWARE PART- A UNIT I What is System Software?

System Software consists of a variety of programs that support the operation of a computer. It makes possible for the user to focus on an application or other problem to be solved, without needing to know the details of how the machine works internally. Define Assembler

Assemblers translate mnemonic instructions into machine code, the instruction formats, addressing modes, etc., are of direct concern in assembler design. Define Compiler.

Compiler translate the high level programs into machine language, taking into account such hardware characteristics as the number and type of registers & machine instruction available. Define Loader and Linker.

The resulting machine language program was loaded in memory and prepared for execution by loader and linker. What are the registers are available for SIC machine? Number 0 Special Use

Mnemonic A X L PC SW

Accumulator, used for arithmetic operations 1 Index register, used for Addressing 2 Linkage register, the jump to subroutine instruction stores the return address in this register. 8 Program counter, contains the address of the next instruction to be fetched for execution. 9 Status word, contains a variety of information, including a Condition Code. Write about different addressing modes in SIC machine.

There are two addressing modes, indicated by the setting of the x bit in the instruction. Target Address Calculation Mode Direct Indirect x=0 x=1 Indication Target Address Calculation TA= address TA= address + (X)

Parentheses are used to indicate the contents of a register or a memory location. For example, (X) represents the contents of register X. What are the registers are available for SIC/XE machine? In Addition to the SIC registers Mnemonic B S T F Number 3 4 5 6 Special Use Base register, used for addressing General working register-no special use. General working register-no special use. Floating point accumulator

Write down the instruction formats of SIC/XE machine.

There are two possible options- use relative addressing or extend the address field to 20 bits. In addition, SIC/XE provides some instructions that do not reference memory at all. Formats 1 and 2 are used for such instructions. Formats 3 & 4 are used for new set of instruction. If bit e=0 means format 3 and e=1 means format 4.

Format 1 (1 byte) 8

op Format 2 (2 bytes) 8 op r1 4 r2 4

Format 3 (3 bytes) 6 op 1 1 1 1 1 1 n i x b p e 12 disp

Format 4 (4 bytes) 6 op 1 1 1 1 1 1 n i x b p e address 20

List down the addressing mode of SIC/XE and explain it.

Addressing Modes Mode Indication TargetAddress Calculation TA= (B) + disp TA= (pc)+ disp

Base relative b=1,p=0 Program counter b=0,p=0 relative

Base Relative Addressing The disp in format 3 is interpreted as a 12 bit unsigned integer. Program counter relative addressing The disp field is interpreted as a 12 bit signed integer, with ve values represented in 2s complement notation.

For format 3 both b and p are set to 0,disp field is taken to be the target address. For format 4 both b and p are set to 0, the target address is taken from the address field. This is Direct Addressing. Indexed Addressing Any of these addressing mode is combined with indexed addressing if bit x=1, the term (X) is added to target address. Immediate Addressing For format3 & 4 If Bit i=1 & n=0, the target address itself is used as the operand value, no memory reference is performed. Indirect Addressing If Bit i=0 & n=1, the value contained in this word is then as the address the operand value. Simple Addressing If Bit i=0 & n=0 or i=1 & n=1, the target address is taken as the location of the operand. Write a SIC program to perform an arithmetic operations. Refer notes.

What is Virtual address space?

Virtual memory allows programs to operate as though they had access to an extremely large memory, regardless of the amount of memory actually present on the system. Routines in the operating system take care of the details of memory management. Explain the data formats of VAX machine.

Integers are stored as binary numbers in a byte, word, longword, quadword or octaword.

2s complement representation is used for negative values. Characters are stored using their 8- bit ASCII codes. Four different floating point data formats on the VAX, ranging in length from 4 to 16 bytes. Two of these are compatible with those found on the PDP-11 and are standard on all VAX processors. The other two are available as options. VAX processors provide a packed decimal data format. In this format each byte represents two decimal digits, with each digit encoded using 4 bits of the byte. The sign is encoded in the last 4 bits. Numeric format that is used to represent values with one digit per byte. In this format, the sign may appear either in the last byte or as a separate byte preceding the first digit. These two variations are called trailing numeric and leading separate numeric. VAX also supports data structures, such as these can be implemented on any machine. VAX provide direct hardware support for them. List down the addressing mode of VAX and explain it.

VAX provides a large number of addressing modes. The operand itself may be in a register or its address may be specified by register (register mode). If the operand address is in a register, the contents of the register may be automatically incremented and decremented by the operand length (autoincrement and autodecrement mode). There are several base relative addressing modes, with displacement fields of different length, when used with register PC, they become program counter relative modes. Describe how instruction sets are designed in VAX.

One of the goals of the VAX designers was to produce an instruction set that is symmetric with respect to data type. Many instruction mnemonics are formed by combining the following elements 1. A prefix that specifies the type of operation 2. A suffix that specifies the data type of the operands 3. A modifier that gives the number of operands involved. Ex., ADDW2 is an add operation with two operands, each a word in length. VAX provides all of the usual types of instructions for computation, data movement, etc., There are also powerful instructions for calling and returning from procedures. How input and output operations are performed in VAX?

Input and output on the VAX are accomplished by I/O device controllers. Each controller has a set of control/status and data registers, which are signed locations in the physical address space. The portion of the address space into which the device controller registers are mapped is called I/O space. No special instructions are required to access register in I/O space. I/o device driver issues command to device controller by storing values in the appropriate registers. The association of an address in I/O space with a physical register in a device controller is handled by the memory management routines. Note: Similar patterns are expected for the other machines. Compare RISC and CISC. CISC: 1. Complex instruction Set Computer. 2. It supports complex instruction set and its of variable length. 3. Examples:VAX Architecture, Pentium Pro Architecture RISC: 1.Reduced instruction set Computer 2.It supports reduced instruction set and its of fixed length. 3.Example:ultraSPARC,PowerPc,Cray T3E Architectures. Consider the following settings: (B) = 006000, (PC)=003000, (X)=000090 N = 1; i=1; x=0; b=0; p=1; e=0; disp. Address = 0110 0000 0000. Calculate TA. TA = 3000+600 = 3600 Write a program for multiplication of two numbers (SIC). Refer Page No. 1 of Unit IV(System Software Notes).