You are on page 1of 5

Assignment 1

(All assignments should be submitted to Blackboard)

Due by 2/1 midnight.

Late submission is subject to 15% penalty

1. Fill out the blanks in the following questions: (the answers can be found in the ppt
file posted on the blackboard)
a. Language Evaluation Criteria include Readability, Writability, Reliability, and
Cost .
b. For the Von Neumann computer architecture, the data and programs stored in
memory, the memory is separate from CPU, the instructions and data are
piped from memory to CPU.
c. For the Imperative language, the central features are variables, assignment
statements, and iteration; some examples are C, Java, Perl.
d. For the Functional language, the main means of making computations is by
applying functions to given parameters; some examples are LISP, Scheme

2. According to Wikipedia, Bytecode, also known as p-code (portable code), is a


form of instruction set designed for efficient execution by a software interpreter.
Do some research and write some details about the introduction on Bytecode
(about 1 page).
Ans
Bytecode is a machine instruction for Java processor chip. The Java Processor Chip
is also known as JVM(Java Virtual Machine). The byte code is a unique for every
machine.

The Java Source file is first passed into the compiler which in turn is converted into
stream of bytes and it generates a machine code in form of .class file. This .class file is
nothing but the machine code which is known as Byte code in Java.
A method's bytecode stream is a sequence of instructions for the Java virtual machine.
Each instruction consists of a one-byte opcode followed by zero or more operands. The
opcode indicates the action to be taken. The remaining information is encoded into one
or more operands that immediately follow the opcode. Each type of opcode has a
mnemonic. Every streams of Java bytecodes can be represented by their mnemonics
followed by any operand values.

Java opcodes generally indicate the type of their operands. This allows operands
to just be themselves, with no need to identify their type to the JVM. For example,
instead of having one opcode that pushes a local variable onto the stack, the
JVM has several. Opcodes iload, lload, fload, and dload push local variables of
type int, long, float, and double, respectively, onto the stack.

3. Do some research and chose one non-von Neumann computer architecture.


Write 2-page essay about the non-von Neumann computer architecture (you can
include a figure; your essay should include the citations).
Ans
MIMD - Multiple Instruction Multiple Data
Its one of the Non Von Neumann Architectures. This class of parallel computers is the
most general one since it permits autonomous operations on a set of data by a set of
processors without any architectural restrictions. Instruction level data-parallel
architectures should satisfy several constraints in order to build massively parallel
systems. For example processors in array processors, systolic architectures and cellular
automata should work synchronously controlled by a common clock. MIMD features into
the last generation of data-parallel computers.

Symmetric Multiprocessors (SMP)


A set of similar processors of comparable capacity.
All processors can perform the same functions (symmetric).
Processors are connected by a bus or other internal connection.
Processors share the same memory.
A single memory or a pool of memory modules.
Memory access time is (approximately) the same for each processor.
All processors share access to I/O.
Either through the same channels or different channels.
Controlled by an integrated operating system:
Providing interaction between processors
Interaction at job, task, file and data element levels

You might also like