COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE INTRODUCTION Introduction 6/16/2018
INTRODUCTION Computer is an electronic machine, which solves problem → deals with electrical signals Digital → information is presented by variables takes a limited number of discrete values. Discrete values are processed internally by components that contain a limited number of discrete states. Introduction 6/16/2018
INTRODUCTION Ex. Decimal digits: 0, 1, 2,…..9 → 10 discrete values. Binary number: 0, 1. Computers use binary system because: It is easy to tell if electrical devices are on (1) or off (0). Electrical and magnitude storage devices having 2 stable states are simple to construct. Digital circuits are less affected by noise. Introduction 6/16/2018
INTRODUCTION A binary digit is called a bit → information is represented in digital computer in groups of bits. Computer Hardware Software Introduction 6/16/2018
INTRODUCTION Hardware: All electronic components and electromechanical devices that comprise the physical entity of device. Software: Instructions and data that the computer manipulates to perform various tasks. Program: A sequence of instructions for the computer. Introduction 6/16/2018
BLOCK DIAGRAM OF COMPUTER CPU: ALU, CCU & registers Output units Input units Memory Introduction 6/16/2018
Central Processing Unit (CPU) Brain of the computer Consists of ALU ( Arithmetic and Logic Unit ): responsible for performing Arithmetic and Logical Operations. Consists of CU ( Control Unit ) : tells the ALU what to do. Consists of Registers : Internal memory of CPU to store temporary data. Also referred as Microprocessor Introduction 6/16/2018
MEMORY UNIT Memory devices are to store the data for later reference. Broadly classified into two : Primary Memory ( Main Memory ) Secondary Memory Introduction 6/16/2018
INPUT UNIT Accepts data from the outside world Converts data into the computer understandable form i.e. Binary form Example of Input devices: Keyboard, Mouse, Microphone, etc. Introduction 6/16/2018
OUTPUT UNIT Produces the output in user readable form. Example of input devices: Monitor, Printer, Speakers, Plotter Introduction 6/16/2018
Architecture & Organization Architecture is those attributes visible to the programmer Instruction set, number of bits used for data representation, I/O mechanisms, addressing techniques. e.g. Is there a multiply instruction? Organization is how features are implemented Control signals, interfaces, memory technology. e.g. Is there a hardware multiply unit or is it done by repeated addition? Introduction 6/16/2018
Architecture & Organization All Intel x86 family share the same basic architecture The IBM System/370 family share the same basic architecture This gives code compatibility At least backwards Organization differs between different versions Introduction 6/16/2018
Programming languages Machine language ML = binary Difficult to use by programmer Invented new notations that were closer to the way humans think→ program to translate from symbolic notations to binary = assembler Symbolic language = assembly language ASM Introduction 6/16/2018
Programming languages Assembly language → write one line for every instruction that the machine will follow (programmer must think like machine) → program that translates from higher level notations closer to natural languages (high-level language) to assembly language High-level language HLL Introduction 6/16/2018
Programming languages Machine language: The language a particular processor understands Assembly language: machine-specific language with a one-to-one correspondence with the machine language for that computer Introduction 6/16/2018
Software layers Machine language Assembly language High-level language 0010 1011 1101 1000 1001 0111 0101 1110 Assembly language MOV AX, 3CH ADD AX, 20H High-level language y = 15; y = y+32; Introduction 6/16/2018
Advantages of HLL It is easier to convert a natural language algorithm to a HLL program. It is easier to read & understand HLL program than ASM program. ASM generally contains more statements than equivalent HLL program → more time is required to code the ASM program. Introduction 6/16/2018
Advantages of HLL Each computer has its own ASM → ASM programs are limited to one machine, but HLL program can be executed on any machine that has a compiler for that language. Introduction 6/16/2018
Advantages of ASM language Efficiency: A well-written assembly language program produces a faster, shorter machine language program. Some operations, such as reading or writing to specific memory locations & I/O ports, can be done easily in ASM but may be impossible at a higher level. Introduction 6/16/2018
Advantages of ASM language Studying ASM → gain a feeling for the way the computer thinks and the way that things happen inside the computer. Introduction 6/16/2018