1 / 37

CS271 ASSEMBLY LANGUAGE PROGRAMMING

CS271 ASSEMBLY LANGUAGE PROGRAMMING. Class hour: 9:30-10:45 am TR. Hyer Hall Room 210. Course Objectives . Identify the major component of a PC-based system, describe the steps involving in assembling, linking, and executing a program

lyre
Download Presentation

CS271 ASSEMBLY LANGUAGE PROGRAMMING

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CS271ASSEMBLY LANGUAGE PROGRAMMING Class hour: 9:30-10:45 am TR. Hyer Hall Room 210

  2. 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

  3. Textbook/Technology requirement Textbook: IBM PC Assembly Language and Programming. Peter Abel. 2001. Fifth Edition. Prentice Hall. ISBN: 0-13-030655-X Software: Emu8086 microprocessor assembler and emulator software. Available at www.emu8086.com

  4. Introduction Tell me about yourself and what you expect to get out from this course

  5. Self-Introduction • Recently graduated from the University of Connecticut (05 Class), Ph.D in Computer Science and Engineering • Master of Computer Science from UW-Milwaukee (96-99) • Bachelor of Science from Hanoi University of Technology (86-91)

  6. Self-Introduction • Research Experience: • User Modeling, Information Retrieval, Decision Theory, Collaborative Filtering, Human Factors • Teaching Experience: • CS 271,172, and 181 at UWW (Fall 2005) • Introduction courses at UOP and Devry • TA for Computer Architecture, OO Design, Compiler, Artificial Intelligence

  7. Self-Introduction • Teaching philosophy: • Interactive • Adaptive • Pro-active • Collaborative • Other hobbies (non-academic related) • Movies • College Basketball • Family activities

  8. Contact information nguyenh@uww.edu Baker Hall 324 Office Hours: 2:15-4:15MWF or by appointment 262 472 5170

  9. Course detail - Topics Write a program in assembly language Understanding of a PC-based system Fundamentals of assembly language & program Specific Applications

  10. Course detail - Evaluation

  11. 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

  12. What does it take to success

  13. Questions?

  14. OverviewFundamental of PC Hardware and Software

  15. Basic features of PC Hardware • Binary and Hexadecimal Number Systems • Bits/bytes • Binary number systems • Hexadecimal • ASCII • PC Components • Processor • Memory

  16. Bits/bytes and Binary system • Bits: 0(off) & 1(on) • Bytes: • Represents a storage location in memory and devices. • 8 bits => 28 combination of 0/1.

  17. Bits/bytes and Binary system Address 40 Husky Road Storrs, CT 06329 00000100 00000000 Word Doubleword Quadword Paragraph Kilobyte Megabyte

  18. Bits/bytes and Binary system Bit value Position value Bit number 0+0=0 1+1=10 1+0=1 01010101 10101010 Add 1 10101011 Operations Negative binary numbers 2’s complement’s notation Reverse the bit values and add 1

  19. 1. What is the value of 01010101? 2. How to represent -25 in 2’s complement notation?

  20. Bits/bytes and Binary system Bit value Position value Bit number Parity bit: forcing the number of bits always odd Example: 01010101 Parity bit = 1 00010101 Parity bit = 0

  21. Hexadecimal presentation • Disadvantage of binary representation: • Is not “user-friendly” • Complicated when computing manually • Hexadecimal representation

  22. Hexadecimal presentation Hexadecimal arithmetic 7+1=8 7+2=9 7+3=A 7+4=B 7+8=F 7+9=?

  23. Practice • Convert from decimal to hexadecimal 23 = ???? 254 = ???? • Adding hexadecimal value 13B4H + 0033H = ???? DCBEH + 35B5H = ????

  24. 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

  25. Step 1.The user presses the capital letter D (shift+D key) on the keyboard. Step 4.After processing, the binary code for the capital letter D is converted to an image, and displayed on the output device. Conversion from letter to binary format and back 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 (01000100) and is stored in memory for processing.

  26. Question?

  27. system unit PC camera speaker printer monitor keyboard modem scanner mouse microphone digital camera PC Components speaker

  28. PC Components • What are two main components on the motherboard? • 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

  29. Processor Control Unit Arithmetic Logic Unit (ALU) Control Unit Arithmetic Logic Unit (ALU) InstructionsDataInformation InstructionsDataInformation Memory InputDevices OutputDevices Data Information StorageDevices Central processing unit (CPU) (Processor) • Interprets and carries out basic instructions that operate a computer • Control unit directs and coordinates operations in computer • Arithmetic logic unit (ALU) performs arithmetic, comparison, and logical operations

  30. Operating system Data Memory • Temporary storage place for data, instructions, and information • Consists of one or more chips on the motherboard or some other circuit board Applications • Three basic items stored in memory

  31. Memory • Size of memory is measured by the number of bytes available • Kilobyte - 1,024 bytes • Megabyte – approximate one million bytes

  32. 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 nonvolatile memory Does not lose its contents when the computer’s power is turned off Memory What are the two types of memory in the system unit?

  33. 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 As additional programs and data are requested, they also load from storage into RAM Most RAM is volatile Memory What is random access memory (RAM)?

  34. 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

  35. Segment • Code segment (CS) • Data segment (DS) • Stack segment (SS) • Extra segment (ES) • Actual address = segment address + offset

  36. 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

  37. 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

More Related