190 likes | 378 Views
COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE. INTRODUCTION. 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.
E N D
COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE INTRODUCTION Introduction
INTRODUCTION • Computeris an electronic machine, which solves problem → deals with electrical signals • Digital → information is presented by variables takes a limited number of discrete values. • Discrete valuesare processed internally by components that contain a limited number of discrete states. Introduction
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
INTRODUCTION • A binary digit is called abit → information is represented in digital computer in groups of bits. Computer Hardware Software Introduction
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
Von Neumann • Stored Program concept • Main memory storing programs and data • ALU operating on binary data • Control unit interpreting instructions from memory and executing • Input and output equipment operated by control unit Introduction
Structure of von Neumann machine Introduction
Von Neumann Architecture • CPU: - ALU (Arithmetic & Logic Unit) for manipulating data. - Registers for storing data. - Control circuit for fetching and executing instructions. • Main memory: Storage for instructions and data. Introduction
Von Neumann Architecture • I/O equipment operated by the CU: Keyboards, printers, terminals, disk drivers… Introduction
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
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
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
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
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
Software layers • Machine 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
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
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
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
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