1 / 29

Chapter 2 8051 Assembly Language Programming

Chapter 2 8051 Assembly Language Programming. Outlines. 8051 registers Manipulate data using registers & MOVE instructions Code simple assembly language instructions Assemble and run a program Sequence events upon power-up Examine programs in ROM codes ROM memory map

mariko
Télécharger la présentation

Chapter 2 8051 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. Chapter 28051 Assembly Language Programming Microcomputers and Microprocessors

  2. Outlines • 8051 registers • Manipulate data using registers & MOVE instructions • Code simple assembly language instructions • Assemble and run a program • Sequence events upon power-up • Examine programs in ROM codes • ROM memory map • Execution of instructions • Data types • PSW register (Program Status Word) • RAM memory space • Stack • Register banks

  3. A B DPTR DPH DPL R0 R1 PC PC (Program counter) R2 R3 R4 R5 R6 R7 8051 Registers 8 bit Registers Figure2-1 (b): Some 8051 16 bit Registers Figure2-1 (a): Some 8 bit Registers of the 8051

  4. MOV Instruction • MOV destination, source ; copy source to dest. • MOV A,#55H ;load value 55H into reg. AMOV R0,A ;copy contents of A into R0 ;(now A=R0=55H)MOV R1,A ;copy contents of A into R1 ;(now A=R0=R1=55H)MOV R2,A ;copy contents of A into R2 ;(now A=R0=R1=R2=55H)MOV R3,#95H ;load value 95H into R3 ;(now R3=95H)MOV A,R3 ;copy contents of R3 into A ;now A=R3=95H

  5. Notes on Programming • Value (proceeded with #) can be loaded directly to registers A, B, or R0 – R7 • MOV R5, #0F9H • If values 0 to F moved into an 8-bit register, the rest assumed all zeros • MOV A, #5 • A too large value causes an error • MOV A, #7F2H

  6. ADD Instruction • ADD A, source ;ADD the source operand ;to the accumulator • MOV A, #25H ;load 25H into AMOV R2,#34H ;load 34H into R2ADD A,R2 ;add R2 to accumulator ;(A = A + R2)

  7. Structure of Assembly Language ORG 0H ;start (origin) at location 0MOV R5,#25H ;load 25H into R5MOV R7,#34H ;load 34H into R7MOV A,#0 ;load 0 into A ADD A,R5 ;add contents of R5 to A ;now A = A + R5ADD A,R7 ;add contents of R7 to A ;now A = A + R7ADD A,#12H ;add to A value 12H ;now A = A + 12H HERE: SJMP HERE ;stay in this loopEND ;end of asm source file Program 2-1:Sample of an Assembly Language Program

  8. Steps to Create a Program

  9. 8051 Program Counter & ROM Space

  10. 8051 Program Counter & ROM Space

  11. 8051 Program Counter & ROM Space

  12. Execute a Program Byte by Byte • PC=0000: opcode 7D fetched; 25 fetched; R5←25; PC+2 • PC=0002: opcode 7F fetched; 34 fetched; R7←34; PC+2 • PC=0004; opcode 74 fetched; 0 fetched; A←0; PC+2 • PC=0006; opcode 2D fetched; A←A+R5; PC+1 • (Similarly…)

  13. 8051 On-Chip ROM Address Range

  14. Data Types & Directives ORG 500H DATA1: DB 28 ;DECIMAL (1C in Hex) DATA2: DB 00110101B ;BINARY (35 in Hex) DATA3: DB 39H ;HEX ORG 510H DATA4: DB “2591” ; ASCII NUMBERS ORG 518H DATA6: DB “My name is Joe” ;ASCII CHARACTERS

  15. PSW (Flag) Register

  16. Instructions Affecting Flag Bits

  17. ADD Instruction and PSW

  18. ADD Instruction and PSW

  19. ADD Instruction and PSW

  20. 8051 RAM Allocation

  21. 8051 Register Banks

  22. Access RAM Locations Using Register Names

  23. Access RAM Locations Using Addresses

  24. Switch Register Banks

  25. Switch Register Banks

  26. Pushing onto Stack

  27. Popping from Stack

  28. Stack & Bank 1 Conflict

  29. Stack & Bank 1 Conflict

More Related