ASSEMBLY LANGUAGE PROGRAMMING
Course Objectives Identify the major component of a PC-based system, describe the steps involving in assembling, linking, and executing a program Write/Debug programs in assembly language to perform the given task and run them
Textbook/Technology requirement Textbook: IBM PC Assembly Language and Programming. Peter Abel Fifth Edition. Prentice Hall. ISBN: X Software: Emu8086 microprocessor assembler and emulator software. Available at
Introduction Tell me about yourself and what you expect to get out from this course
Course detail - Topics Write a program in assembly language Understanding of a PC-based system Fundamentals of assembly language & program Specific Applications
What does it take to success -Attend the class regularly and actively participate in the class discussion (ask questions, answer questions, etc..) -Don’t give up on programming assignments. Pay attention to detail -Try many options when doing programming assignments
Questions?
Overview Fundamental of PC Hardware and Software
Basic features of PC Hardware Binary and Hexadecimal Number Systems –Bits/bytes –Binary number systems –Hexadecimal –ASCII PC Components –Processor –Memory
Bits/bytes and Binary system Bits: 0(off) & 1(on) Bytes: –Represents a storage location in memory and devices. –8 bits => 2 8 combination of 0/1.
Bits/bytes and Binary system Address 40 Husky Road Storrs, CT Word Doubleword Quadword Paragraph Kilobyte Megabyte
Bits/bytes and Binary system Bit value Position value Bit number Operations 0+0=0 1+1=10 1+0=1 Negative binary numbers 2’s complement’s notation Reverse the bit values and add Add
1. What is the value of ? 2. How to represent -25 in 2’s complement notation?
Bits/bytes and Binary system Bit value Position value Bit number Parity bit: forcing the number of bits always odd Example: Parity bit = Parity bit = 0
Hexadecimal presentation Disadvantage of binary representation: –Is not “user-friendly” –Complicated when computing manually Hexadecimal representation
Hexadecimal presentation Hexadecimal arithmetic 7+1=8 7+2=9 7+3=A 7+4=B 7+8=F 7+9=?
Practice Convert from decimal to hexadecimal 23 = ???? 254 = ???? Adding hexadecimal value 13B4H H = ???? DCBEH + 35B5H = ????
Popular coding systems to represent data ASCII—American Standard Code for Information Interchange EBCDIC—Extended Binary Coded Decimal Interchange Code Unicode—coding scheme capable of representing all world’s languages
Conversion from letter to binary format and back Step 1. The user presses the capital letter D (shift+D key) on the keyboard. Step 2. An electronic signal for the capital letter D is sent to the system unit. Step 3. The signal for the capital letter D is converted to its ASCII binary code ( ) and is stored in memory for processing. Step 4. After processing, the binary code for the capital letter D is converted to an image, and displayed on the output device.
Question?
PC Components printer scanner speaker PC camera microphone digital camera system unit keyboard modem speaker monitor mouse
PC Components Central Processing Unit (CPU) Also called a processor Carries out instructions that tell computer what to do Memory Temporary holding place for data and instructions
Central processing unit (CPU) (Processor) Interprets and carries out basic instructions that operate a computerProcessor Control Unit Arithmetic Logic Unit (ALU) Input Devices Storage Devices Output Devices Memory DataInformation Instructions Data Information Control Unit Control unit directs and coordinates operations in computer Arithmetic logic unit (ALU) performs arithmetic, comparison, and logical operations
Memory Operating system Applications Data Three basic items stored in memory Temporary storage place for data, instructions, and information Consists of one or more chips on the motherboard or some other circuit board
Memory Size of memory is measured by the number of bytes available Kilobyte - 1,024 bytes Megabyte – approximate one million bytes
Volatile Memory Loses its contents when the computer's power is turned off volatile memory Loses its contents when the computer's power is turned off Memory What are the two types of memory in the system unit? nonvolatile memory Does not lose its contents when the computer’s power is turned off
Memory Memory chips that can be read from and written to by the processor and other devices When the computer starts, operating system files are loaded from a hard disk into RAM What is random access memory (RAM)? As additional programs and data are requested, they also load from storage into RAM Most RAM is volatile
Addressing data in Memory Difference between address of a memory Location and its content Processor stores the data in memory in reverse by sequence Two types of addressing schemes absolute address segment-offset address
Segment Code segment (CS) Data segment (DS) Stack segment (SS) Extra segment (ES) Actual address = segment address + offset
Registers Segment register –CS,DS,SS,ES, FS and GS Pointer register –IP,SP,BP General purpose register –AX,BX,CX,DX Index register –SI, DI
Flags OF, DF, IF, SF, ZF,AF,PF,CF If cleared: NV,UP,EI,PL,NZ,NA,PO,NC If set: OV,DN,EI,NG,ZR,AC,PE,CY