ITCS Assignment
ITCS Assignment
ASSIGNMENTS
PROGRAM:
SEMESTER-I
Subject Name
:
Study COUNTRY
:
Permanent Enrollment Number (PEN) :
Roll Number
:
Student Name
:
INSTRUCTIONS
a) Students are required to submit all three assignment sets.
ASSIGNMENT
Assignment A
Assignment B
Assignment C
DETAILS
Five Subjective Questions
Three Subjective Questions + Case Study
45 Objective Questions
MARKS
10
10
10
b)
c)
d)
e)
Introduction to IT and CS
Assignment A
Q1. Explain register transfer language..
A symbolic language which is a convenient tool for describing the internal organization
of digital computers and can also be used to facilitate the design process of digital
systems.
but it typically has a one to one relationship with the corresponding machine
code. Therefore an assembler is said to perform isomorphic (one to one
mapping) translation. Advanced assemblers provide additional features that
support program development and debugging processes. For example, the
type of assemblers called macro assemblers provides a macro facility.
An interpreter is a computer program or a tool that executes programming
instructions. An interpreter may either execute the source code directly or
converts the source to an intermediate code and execute it directly or execute
precompiled code produced by a compiler (some interpreter systems include
a compiler for this task). Languages like Perl, Python, MATLAB and Ruby
are examples of programming languages that use an intermediate code.
UCSD Pascal interprets a precompiled code. Languages like Java, BASIC
and Samltalk first compile the source to an intermediate code called
bytecode and then interpret it.
Q5.What are the different level of programming languages?
Absolute Machine Code
The very lowest possible level at which you can program a computer is in its
own native machine code, consisting of strings of 1's and 0's and stored as
binary numbers. The main problems with using machine code directly are
that it is very easy to make a mistake, and very hard to find it once you
realize the mistake has been made.
Assembly Language
Assembly language is nothing more than a symbolic representation of
machine code, which also allows symbolic designation of memory locations.
Thus, an instruction to add the contents of a memory location to an internal
CPU register called the accumulator might be add a number instead of a
string of binary digits (bits).
No matter how close assembly language is to machine code, the computer
still cannot understand it. The assembly-language program must be
translated into machine code by a separate program called an assembler. The
assembler program recognizes the character strings that make up the
symbolic names of the various machine operations, and substitutes the
required machine code for each instruction. At the same time, it also
calculates the required address in memory for each symbolic name of a
memory location, and substitutes those addresses for the names. The final
result is a machine-language program that can run on its own at any time;
the assembler and the assembly-language program are no longer needed. To
help distinguish between the "before" and "after" versions of the program,
the original assembly-language program is also known as the source code,
while the final machine-language program is designated the object code.
If an assembly-language program needs to be changed or corrected, it is
necessary to make the changes to the source code and then re-assemble it to
create a new object program.
Compiler Language
Compiler languages are the high-level equivalent of assembly language.
Each instruction in the compiler language can correspond to many machine
instructions. Once the program has been written, it is translated to the
equivalent machine code by a program called a compiler. Once the program
has been compiled, the resulting machine code is saved separately, and can
be run on its own at any time.
As with assembly-language programs, updating or correcting a compiled
program requires that the original (source) program be modified
appropriately and then recompiled to form a new machine-language (object)
program.
Typically, the compiled machine code is less efficient than the code
produced when using assembly language. This means that it runs a bit more
slowly and uses a bit more memory than the equivalent assembled program.
To offset this drawback, however, we also have the fact that it takes much
less time to develop a compiler-language program, so it can be ready to go
sooner than the assembly-language program.
Interpreter Language
An interpreter language, like a compiler language, is considered to be high
level. However, it operates in a totally different manner from a compiler
language. Rather, the interpreter program resides in memory, and directly
executes the high-level program without preliminary translation to machine
code.
This use of an interpreter program to directly execute the user's program has
both advantages and disadvantages. The primary advantage is that you can
run the program to test its operation, make a few changes, and run it again
directly. There is no need to recompile because no new machine code is ever
produced. This can enormously speed up the development and testing
process.
On the down side, this arrangement requires that both the interpreter and the
user's program reside in memory at the same time. In addition, because the
interpreter has to scan the user's program one line at a time and execute
internal portions of itself in response, execution of an interpreted program is
much slower than for a compiled program.
Assignment B
1. Explain memory hierarchy in brief.
The term memory hierarchy is used in computer architecture when
discussing performance issues in computer architectural design, algorithm
predictions, and the lower level programming constructs such as involving
locality of reference. A "memory hierarchy" in computer storage
distinguishes each level in the "hierarchy" by response time
There are four major storage levels.
Assignment C
(Multiple Choice Question)
Q1.
a)
b)
c)
d)
Q2.
a)
b)
c)
d)
Q3.
a)
b)
c)
d)
Q7.
transistors.
a)
b)
c)
d)
Q8.
a)
b)
c)
d)
1st
2nd
3rd
4th
EDVAC stand for
Electronic Discrete Variable Automatic Computer.
Electronic Discrete Variable Automatic Calculator.
Electric Discrete Variable Automatic Computer.
Electric Dependent Variable Automatic Calculator.
Q13. When a fixed precision binary number is used to hold only positive
values, it is said to be
a) unsigned
b) Signed
c) Positive
d) Negitave
Q14.
a)
b)
c)
d)
Q15.
a)
b)
c)
d)
primary storage
auxiliary storage
secondary storage
permanent storage
Control Unit
b)
ALU
c)
Registers
d)
RAM
Mores Law
b)
CPUs Law
c)
Moores Law
d)
Transistors Law
b)
c)
d)
RAM
b)
Hard Disk
c)
Tapes
d)
DVD
ROM
b)
RAM
c)
Hard Disk
d)
CD
cache memory
RAM
Virtual memory
ROM
Q31
a)
b)
c)
d)
Q32.
a)
b)
c)
d)
c)
d)
1st
b)
2nd
c)
3rd
d)
4th
Compiler
b)
Interpreter
c)
Translator
d)
Converter
Application Software
b)
Translators
c)
Languages
d)
Operating System
Multiuser OS
b)
Multiprocessing
c)
Multitasking
d)
Multithreading
b)
c)
d)