Content. 1. General informations 2. direct addressing 3. indirect addressing 4. Examples including informations

Size: px
Start display at page:

Download "Content. 1. General informations 2. direct addressing 3. indirect addressing 4. Examples including informations"

Transcription

1 IV. Addressing Modi

2 Content 1. General informations 2. direct addressing 3. indirect addressing 4. Examples including informations

3 1. General Informations

4 Address range for data and program : the 65xx family of processors has an address range from $0000 to $FFFF The high-byte is called page 256 pages Particular meaning of some pages : zero-page : fast access (1 cycle less, special addressing mode, operand consists only of one byte) one-page : Stack : the stack pointer (register) points to the low address byte of the first empty cell on the top. The high address byte is set automatically to 01. FF-page : for instance, resetting- und interrupt-vectors are here declared, i.e., start addresses of the routines, which are to be performed in the case of the corresponding interrupt. page 0, 1 part of Random Access memory (RAM) ; R/W page FF part of Read only memory (ROM)

5 Remark (Storing addresses) : If writing both address bytes to the memory, it is usually done in the following way : low address byte low memory cell high address byte high memory cell Examples of applications : Call of subroutines (see chapt. I), i.e., Copy return address to the stack indirect addressing (see chapt. V) Interrupt vectors (see later) Moreover, the above convention is helpful when shifting the content of memory cells or when performing additions or subtractions.

6 2. direct addressing Direct addressing is also called effective addressing ; It is at most a simple address calculation required. (i) absolute : Address is specified by the Operanden (explicitly or symbolically). Generally the command is 3 Byte long (exception zero-page) Examples : adc Summand ; symbolically sta $4050 ; explicitely zero-page : Summand = $AB ; high-byte not neccessary adc Summand sta $50 ; zero-page addresse

7 (ii) immediate : (2 Byte long) Constant dadressing : operand is the value itself. Example : ldx #$0C ; hexadecimal value lda #12 ; decimale value adc #% ; binary value (iii) implicit (implied) : (1 Byte long) Explicit specification of address is not neccessary, because the command referes directly to one or two registers. Examples : inx ; increment the content of X-register by one tax ; content of Accumulator X-register rol ; roll bits of accumulator using C-Bit (see above) rol, asl etc. can be used both implizitly and absolutely.

8 (iv) relative : Assembler calculates displacement (offset Δ). command usually 2 Byte long Δ = aim address - program pointer Δ 127 When running the program, Δ will be added to the actual content of the program pointer using mod $100. If a Carry is created for Δ>0, then one gets an excess of the page. If no Carry is created for Δ<0, then one falls below the page. in both cases 1 more cycle is neccessary Advantage of relative addressing : Relocatable programming code, e.g. when code is shifted by a multi-tasking or -programming operation system or when using reusable program parts.

9 Example : (compare Branch-commands) Loop : ldx #10 42FE A2 0A 4300 dex 430C CA bne Loop 430D D0 EF Δ nop 430F rts Calculation of the jumping address : $ 43 0F + $ EF return jump, as MSB = Carry $ 43 FE Carry = 0 implies excess of page jumping addresse $ 42FE

10 (v) absolute indexed (always post indexed) : the effective address follows from the addition (mod $1000) of the base address (Operand) and the content of the index-registers X or Y. The command is usually 3 Byte long. Application especially with tables, often integreted in loops. Example : lda Tab, x Tab represents the base address. If x=0, the base address is refered. Instead of the X-register, with the same functional operation the Y-register can be used.

11 Example :.org $4000 ldx #0 ldy #0 loop: lda Tab_1, x sec sbc Tab_2, x bmi cont sta Diff, y iny cont: inx cpx #5 bne loop rts loopcanbeprogrammedonly by incrementing the index, as the value for x=0 must also be read. Trick for a decrementing version will be discussed later. Tab_1:.byte $FF, $16, $A5, $27, $B3 Tab_2:.byte $45, $3A, $84, $E2, $9C Diff:.byte $00

12 3. indirect addressing The address, to which a command refer, is stored in a special part of the memory (2 byte per adddress). This couple of memory cells is called : Pointer (vgl. C ++) or Vector ( used in context with interrupts ) In current processors 16-bit registers, which allow a fast access, are used as memory for the pointers. There are no 16-bit registers with the 65xx processors. Nevertheless, in order to realize the fastest possible access, the zero-page as memory area is used for the pointers.

13 Indirect addressing for the value (Wert) stored in the memory cell α = $5010 Low α = $10 High α = $50

14 Advantage of the indirect addressing : high flexibility Data blocks, to which should be refered, can be easily changed. A time-consuming search of READ-commands in the whole program is not neccessary, but a new initialisation of the pointer at a central place is sufficient. Pointer is programmable. The call of subroutines can be controlled by parameters (see later).

15 How to declare a pointert : Pointer = $80 ; zero-page address is defined for the pointer. lda #<Table ; loading low address-byte Sta Pointer lda #>Table ; loading high address-byte Sta Pointer+1 Table:.byte $02, $FF,.., $6A

16 Attention using zero-page addressing subsequent correction of program memory due to the use of zero-page

17 Indirect addressing modi : (i) absolute : only jump-command Remark (examples) : jmp (pointer) external events result in jumps indirectly addressed. RES ; reset jmp (RESVec) = jmp ($FFFC) NMI ; hardware Interrupt jmp (NMIVec) = jmp ($FFFA) IRQ ; hardware Interrupt jmp (IRQVec) = jmp ($FFFE)

18 (ii) implicit (implied) : Explicit specification of address is not neccessary, because the command refers directly to one or two registers. Examples : Stack-commands: pha, pla, php, plp Here the Stackpointer is addressed, in which the address of the Stack referred to (page 1) is registered. Software-break brk The interrupt vektor $FFFE must be defined. The only difference to a hardware interrupt is that the B-Bit is set in the processor s status register.

19 iii. pre-indexed indirect addressing : (indexed indirected) command is 2 byte long formal command : Application : sta (P-list,x) ; P-list is as page-0-address declared. a) Indirect absolute addressing for other commands than jmp b) Pointer- lists adc (Pointer,0) x must be incremented twice, in order to to proceed to the next pointer.

20 Schematic drawing for an indexed indirected addressing :

21 iv. Indirect post-indexed addressing : (indirected indexed) Schematic drawing for an indirected indexed addressing :

22 command is 2 byte long formal command : sta (Pointer),y ; Pointer is declared as page-0-address. This addressing modus combined both indirect Properties and the indexed addressing of tables As known from direct addressing). very powerful addressings modus

23 4. Examples with Informations

24 Used Abbreviations : IMP implicit Akku implivit Accumulator IM immediate R relative ABS absolute ABX absolute, x-indexed ABY absolute, y-indexed ZP absolute, zero page ZPX absolute, zero page, x-indexed IND indirect (only JMP-command) (IND,X) indirect, x-pre-indexed (IND),Y indirevt, y-post-indexed

25 Examples of Commands : Mnemo-Code Machine Code Addressing Number of bytes Cycles ADC #Operand $69 IM 2 2 ADC Operand $65 ZP 2 3 ADC Operand, x $75 ZPX 2 4 ADC Operand $6D ABS 3 4 ADC Operand, x $7D ABX 3 4* ADC Operand, y $79 ABY 3 4* ADC (Operand, x) $61 (IND, X) 2 6 ADC (Operand), y $71 (IND), Y 2 5* * if page is exeeded

26 Mnemo-Code Machinen Code Addressing Number of bytes Cycles ROR $6A AKKU 1 2 ROR Operand $66 ZP 2 5 ROR Operand, x $76 ZPX 2 6 ROR Operand $6E ABS 3 6 ROR Operand, x $7E ABX 3 7 Mnemo-Code Machinen Code Addressing Number of bytes Cycles BMI $30 R 1 2* * if page is exeeded and if condition true 1 additionel cycle

27 BIT Command : Virtual conjunctive operation of the operand with the Accumulator (virtual AND ), content of Accu is not changed Mnemo-Code Machinen Code Addressing Number of bytes Cycles BIT Operand $24 ZP 2 3 BIT Operand $2C ABS 3 4 Influence on Flags : N V B D I Z C x x x - LDA #% BIT Test Test:.Byte % Leads to : N = 0 V = 1 and because of the virtual result % Z = 1

28 V. Structured Programming

29 INHALT 1. Programmstruktur Diagramme 2. Optimieren von Schleifen 3. andere Strukturelemente

30 1. Diagrams of Program Structures

31

32 example :.org $4000 ldx #4 lda A sta result loop: asl A rol A+1 lda result clc adc A sta result lda result+1 adc A+1 sta result+1 dex bne Loop lda B beq end jsr division End : rts A:.byte $A7 $00 B:.byte $34 result:.word $0000

33 2. Optimization of Loops

34 Loops in higher Programming languages: three Typs : repeat.. until ; arbitrary loop parameter, end for a specific parameter condition while.. do ; loop, if specific parameter is given, end for any deviation for. to. step. do ; Incrementing loop parameter with a given step width, end, if final value is reached

35 Such loop constructions are not implemented in the Assembler, because microprocessors do not directly support loops. There are only few exeptions : repeating I/O-commands used with the Z80 processor repeat-commands for the 80x86 processors Reapeating commands used at the PDP-11 und VAX-11 Otherwise at best to be found on the level of the assembler-directives.

36 Loop-like behaviour can be realized in the assembler only by using branch commands For further discussions we will define 3 specific points on loops. 1. Entry point (E) 2. leaping point (L) here branch - commands are important structure elements.

37 3. Loop boundary, given in the program by : (1) begin of Loop (LB) (2) end of loop (LE) The inner body of a loop is shortened by LI. The boundaries are also called interfaces, because last command of the loop (the prefixed strukture block) is connected with the first command of the the suffixed struktur block (the loop). If the end of the loop does not coincide with the leaping point (LE L), then an unconditional jump to the begin of the loop (LB) will be performed. In this case the end of the loop is marked by U.

38 Using the special points three meaningful categories can be introduced : I. leaping and entry point coincide ( E = L ) repellent loop (while loop) II. III. Entrypoint is the first command following the leaping point. ( E = L + 1 ) loop is executed at least once (repeat until - loop) Entry point has no correlation to the leaping point. a) E = LB, E = U is here included, because U means an unconditional jump to LB. b) E = LI

39 presentation of the most important loop-variants

40 Summary of all possible variants Category Discription valuation entry point ( E ) leaping point ( L ) jump from LE to LB I Rejection II a LB = L see left U acceptable a' LE LB* U nonsense b LE = L ; wtih U see left T good c LI ; with U see left U bad a LB LE T good a' LE ; with U LE - 1 U nonsense b LB+1 ; with U LB U acceptable c LI E ; with U LI E - 1 U bad a LB LI A U acceptable a' LE ; with U LI A * U nonsense b LI E ; with U LE T good III c LI E ; with U LB U acceptable d LI E ; with U LI A before LI E U bad e LI E ; with U LI A after LI E U bad f LE ; with U LI A U bad These cases are presented in above viewgraph * Because of the direct inconditional jump from the entry point LE to LB is this case identical with case (a), i.e. it is E=LB instead of LE. Due to this two immediate following unneccessary jumps, these cases are nonsense

41 Version I a cycles Command_V E ; last command of the prefixed strukture Ldy # n ; loop initialization LA : beq SufSt ; end of loop / rejection, if Z-flag has been set Command_S 1 : : ; 1. command of the loop 2 (3) k dey ; possibly Z-flag is set LE : jmp LA ; unconditional jump to the loop begin 3 SufSt: command_n 1 ; only reachable from LA by a jump : : Cycles balance : N Ia = n (2+k+3) + 3

42 Version I b cycles command_v E Ldy # n ; last command of prefixed structure ; loop Initialization jmp LE ; jump into the loop 3 LA : Befehl_S 1 ; 1. command of the loop : : dey ; possibly Z-flag is set LE : bne SA ; end of loop / rejection, if Z-flag has been gesetzt SufSt: command_n 1 ; without jump reachalbe from SE k 3 (2) : : Cycles balance : N Ib = 3 + n (3+k) + 2

43 Version II a cycles command_v E ; last command of the prefix structure Ldy # n ; loop initialization LA : command_s 1 ; 1. command of the loop (no rejection!) : : k dey ; possibly Z-flag is set LE : bne SA ; end of loop, if Z-flag has been set 3 (2) SufSt: Bef_N 1 ; without jump reachable from SE : : no jumps! Cycles balance : N IIa = n (k+3) + 2

44 S U M M A R Y : Especially for the assembler, loops must not be considered independently of prefixed and sufixed structure block. Time-Aspect : Loops including rejection branch (n=0 possible) Ia E = LA N Ia = n (k+5) + 3 is favorable only in the case of rejection Ib E = LE N Ib = n (k+3) + 5 Even faster (n 1) IIa E = LA N IIa = n (k+3) + 2

45 Aspekt of Memory Space: Difference between Ia and Ib : jmp - command in prefixed structure or loop the same memory space loop IIa compared to typ Ia/Ib no jmp - command disadvantage : 3 byte less in memory no entrance rejection

46 One Comment to jumps and branches Is an unconditional jump only possible by jmp-command? In 650X and 680X processors this seems to be true. Other processors, even the 65C02, know the bra-command (unconditional branch) Difference between jump and branch? Jmp : only absolute addressing ; 3 Bytes bra : only relative addressing ; sogar nur 2 Bytes disadvantage: limited jump width of 127 resp How is it possible to simulate the bra command in the 650X? clv ; 1 cycle bvc ; 3 cycles Why 3?

47 V. Subroutinetechniques

48 Content 1. Transfer of Parameters 2. Co-Routine-technique 3. Frame-Technique 4. Algorithms for Multiplication

49 1. Transfer of Parameters : Parameters can be : Values Indices, loop parameters Content of registers (e.g. counter) Addresses of memory cells (e.g. pointer)

50 With the 650X processor family lists of parameters are not possible in the calling command of subroutines (in contrast to Macros). How can parameter be transferred to subroutines? 1. via registers 2. via RAM memory cells a) Absolute addresses (no re-entrancy [re-en]) b) Ramp (memory region in program code) (no re-en) c) Argumentpointer (re-en, if Arg-pointer is saved to the stack) d) Deskciptors (datatyp, length and pointer) laborious, but realized in old VAX. 3. via the Stack

51 2. Co-Routines

52 As Reminder : example : $4010 JSR Power $4013 commandl_cont ; $4012 as jumping-back address ρ is put to the stack $wxyz Power rts ; memory address $4012 is taken from the stack and written into the programm counter, which then is incremented by 1, i.e., is set to $4013. Subroutines are called by jumps, i.e., the starting address of the subroutine must be written into the program counter.

53

54

55

56 Example for a Pair-Co-Routine : Content ot the stack 5000 SBR: LDX TabX 5003 JSR MULT 5006 JMP END 5015 ADD: LDA TabX, x 5018 PHA 5009 MULT : FORMULA : F = Y N (X N +Y N-1 (X N-1 + +Y 2 (X 2 +Y 1 (X 1 +0)) )) LDA TABY, x 5019 DEX 500C PHA 501A BEQ CONT 500D JSR ADD 501C JSR MULT 5010 PLA 501F Cont: PLA 5011 JSR Mult_Resulz_*_Y 5020 CLC 5014 RTS 5021 ADC result 5024 LDA # ADC result RTS 502A END: RTS 502B TabX:.byte N, X 1, X 2,.. X N 502B+N TabY:.byte N, Y 1, Y 2,.. Y N 502B+2N result:.word $0000

COSC 243. Instruction Sets And Addressing Modes. Lecture 7&8 Instruction Sets and Addressing Modes. COSC 243 (Computer Architecture)

COSC 243. Instruction Sets And Addressing Modes. Lecture 7&8 Instruction Sets and Addressing Modes. COSC 243 (Computer Architecture) COSC 243 Instruction Sets And Addressing Modes 1 Overview This Lecture Source Chapters 12 & 13 (10 th editition) Textbook uses x86 and ARM (we use 6502) Next 2 Lectures Assembly language programming 2

More information

The 6502 Instruction Set

The 6502 Instruction Set The 6502 Instruction Set Load and Store Group LDA Load Accumulator N,Z LDX Load X Register N,Z LDY Load Y Register N,Z STA Store Accumulator STX Store X Register STY Store Y Register Arithmetic Group ADC

More information

III. Flags of the Processor Staus Register

III. Flags of the Processor Staus Register III. Flags of the Processor Staus Register INHALT 1. Meaning 2. Application 2.1 Shifts 2.2 Branches 2.3 Addition and Subtraction 2.4 Comparisons in magnitude 1. Meaning processor status register Overflow

More information

A. CPU INSTRUCTION SET SUMMARY

A. CPU INSTRUCTION SET SUMMARY A. CPU INSTRUCTION SET SUMMARY This appendix summarizes the CPU instruction set. Table A-1 is a matrix of CPU instructions and addressing modes arranged by operation code. Table A-2 lists the CPU instruction

More information

Regarding the change of names mentioned in the document, such as Mitsubishi Electric and Mitsubishi XX, to Renesas Technology Corp.

Regarding the change of names mentioned in the document, such as Mitsubishi Electric and Mitsubishi XX, to Renesas Technology Corp. To all our customers Regarding the change of names mentioned in the document, such as Mitsubishi Electric and Mitsubishi XX, to Renesas Technology Corp. The semiconductor operations of Hitachi and Mitsubishi

More information

Example Programs for 6502 Microprocessor Kit

Example Programs for 6502 Microprocessor Kit Example Programs for 6502 Microprocessor Kit 0001 0000 0002 0000 GPIO1.EQU $8000 0003 0000 0004 0000 0005 0200.ORG $200 0006 0200 0007 0200 A5 00 LDA $0 0008 0202 8D 00 80 STA $GPIO1 0009 0205 00 BRK 0010

More information

; Once Initialized, monitor character in calls to CN05 ; set carry for input, to be tested CN35 C SEC

; Once Initialized, monitor character in calls to CN05 ; set carry for input, to be tested CN35 C SEC // // Serialcode.s // 256 Byte Prom P8 and 512 Byte PROM P9A (second version) for Apple II Serial Card // P9A differs from P9 by adding RTS/ACK software flow control to output and // by removing batch

More information

COSC 243. Assembly Language Techniques. Lecture 9. COSC 243 (Computer Architecture)

COSC 243. Assembly Language Techniques. Lecture 9. COSC 243 (Computer Architecture) COSC 243 Assembly Language Techniques 1 Overview This Lecture Source Handouts Next Lectures Memory and Storage Systems 2 Parameter Passing In a high level language we don t worry about the number of parameters

More information

0b) [2] Can you name 2 people form technical support services (stockroom)?

0b) [2] Can you name 2 people form technical support services (stockroom)? ECE 372 1 st Midterm ECE 372 Midterm Exam Fall 2004 In this exam only pencil/pen are allowed. Please write your name on the front page. If you unstaple the papers write your name on the loose papers also.

More information

Programming Book for 6809 Microprocessor Kit

Programming Book for 6809 Microprocessor Kit Programming Book for 6809 Microprocessor Kit Wichit Sirichote, wichit.sirichote@gmail.com Image By Konstantin Lanzet - CPU collection Konstantin Lanzet, CC BY-SA 3.0, Rev1.2 March 2018 1 Contents Lab 1

More information

instruction 1 Fri Oct 13 13:05:

instruction 1 Fri Oct 13 13:05: instruction Fri Oct :0:0. Introduction SECTION INSTRUCTION SET This section describes the aressing modes and instruction types.. Aressing Modes The CPU uses eight aressing modes for flexibility in accessing

More information

William Stallings Computer Organization and Architecture 8 th Edition. Chapter 11 Instruction Sets: Addressing Modes and Formats

William Stallings Computer Organization and Architecture 8 th Edition. Chapter 11 Instruction Sets: Addressing Modes and Formats William Stallings Computer Organization and Architecture 8 th Edition Chapter 11 Instruction Sets: Addressing Modes and Formats Addressing Modes Immediate Direct Indirect Register Register Indirect Displacement

More information

ME4447/6405. Microprocessor Control of Manufacturing Systems and Introduction to Mechatronics. Instructor: Professor Charles Ume LECTURE 7

ME4447/6405. Microprocessor Control of Manufacturing Systems and Introduction to Mechatronics. Instructor: Professor Charles Ume LECTURE 7 ME4447/6405 Microprocessor Control of Manufacturing Systems and Introduction to Mechatronics Instructor: Professor Charles Ume LECTURE 7 Reading Assignments Reading assignments for this week and next

More information

Table 1: Mnemonics Operations Dictionary. Add Accumulators Add B to Y. Add with carry to B. Add Memory to B. Add 16-bit to D And B with Memory

Table 1: Mnemonics Operations Dictionary. Add Accumulators Add B to Y. Add with carry to B. Add Memory to B. Add 16-bit to D And B with Memory Table 1: Mnemonics s Dictionary ABA ABX ABY ADCA ADCB ADDA ADDB ADDD ANDA ANDB ASL ASLA ASLB ASLD ASR ASRA ASRB BCC BCLR BCS BEQ BGE BGT BHI BHS BITA BITB BLE BLO BLS BLT Add Accumulators Add B to X Add

More information

Decoding bitstreams for fun and profit

Decoding bitstreams for fun and profit 2018-12-01 11:25 1/13 Decoding bitstreams for fun and profit Decoding bitstreams for fun and profit by lft This article describes a technique for extracting bitfields from a long sequence of bytes stored

More information

Programming the Motorola MC68HC11 Microcontroller

Programming the Motorola MC68HC11 Microcontroller Programming the Motorola MC68HC11 Microcontroller COMMON PROGRAM INSTRUCTIONS WITH EXAMPLES aba Add register B to register A Similar commands are abx aby aba add the value in register B to the value in

More information

BINARY LOAD AND PUNCH

BINARY LOAD AND PUNCH BINARY LOAD AND PUNCH To easily decrease the amount of time it takes to load a long tape (Cassette or paper) a BINARY formatting technique can be used instead of the conventional ASCII format used by the

More information

JBit E1 (1) Subroutines. Preface. Usage. Tables. Program Layout

JBit E1 (1) Subroutines. Preface. Usage. Tables. Program Layout JBit E1 (1) Preface, Usage, Program Layout, Subroutines, Tables Preface JBit E1 (1) The E1 series will show you how to write a complete application with JBit. While the application is trivial by today

More information

The Motorola 68HC11 Instruc5on Set

The Motorola 68HC11 Instruc5on Set The Motorola 68HC11 Instruc5on Set Some Defini5ons A, B * accumulators A and B D * double accumulator (A + B) IX, IY * index registers X and Y SP * stack pointer M * some memory loca5on opr * an operand

More information

Code Secrets of Wolfenstein 3D IIGS. Eric Shepherd

Code Secrets of Wolfenstein 3D IIGS. Eric Shepherd Code Secrets of Wolfenstein 3D IIGS Eric Shepherd Fast Screen Refresh with PEI Slamming Or, Dirty Tricks with the Direct Page IIGS Features We Can Abuse Super high-resolution graphics shadowing Bank $01

More information

COMPUTE! ISSUE 36 / MAY 1983 / PAGE 244

COMPUTE! ISSUE 36 / MAY 1983 / PAGE 244 Versatile Data Acquisition with VIC Doug Homer and Stan Klein COMPUTE! ISSUE 36 / MAY 1983 / PAGE 244 This simple method of adjusting the VIC's internal jiffy dock can slow it down to match your timing

More information

ECE331 Handout 3- ASM Instructions, Address Modes and Directives

ECE331 Handout 3- ASM Instructions, Address Modes and Directives ECE331 Handout 3- ASM Instructions, Address Modes and Directives ASM Instructions Functional Instruction Groups Data Transfer/Manipulation Arithmetic Logic & Bit Operations Data Test Branch Function Call

More information

DAN64: an AVR based 8-bit Microcomputer

DAN64: an AVR based 8-bit Microcomputer DAN64: an AVR based 8-bit Microcomputer Juan J. Martínez jjm@usebox.net Manual for V.R - May 0, 06 Features Composite video black and white output, 56 x 9 resolution, x 4 characters (8 x 8 pixels font,

More information

Assembly Language Programming of 8085

Assembly Language Programming of 8085 Assembly Language Programming of 8085 1. Introduction A microprocessor executes instructions given by the user Instructions should be in a language known to the microprocessor Microprocessor understands

More information

LECTURE #21: G-CPU & Assembly Code EEL 3701: Digital Logic and Computer Systems Based on lecture notes by Dr. Eric M. Schwartz

LECTURE #21: G-CPU & Assembly Code EEL 3701: Digital Logic and Computer Systems Based on lecture notes by Dr. Eric M. Schwartz LECTURE #21: G-CPU & Assembly Code EEL 3701: Digital Logic and Computer Systems Based on lecture notes by Dr. Eric M. Schwartz G-CPU Important Notes (see Schwartz s lecture for a general overview) - The

More information

Chapter. Computer Architecture

Chapter. Computer Architecture Chapter 4 Computer Architecture Figure 4.1 Input device Central processing unit Main memory Output device Bus Data flow Control Figure 4.2 Central processing unit () Status bits ( ) Accumulator ( ) Index

More information

Lecture 6 Assembly Programming: Branch & Iteration

Lecture 6 Assembly Programming: Branch & Iteration CPE 390: Microprocessor Systems Spring 2018 Lecture 6 Assembly Programming: Branch & Iteration Bryan Ackland Department of Electrical and Computer Engineering Stevens Institute of Technology Hoboken, NJ

More information

Lecture #3 Microcontroller Instruction Set Embedded System Engineering Philip Koopman Wednesday, 20-Jan-2015

Lecture #3 Microcontroller Instruction Set Embedded System Engineering Philip Koopman Wednesday, 20-Jan-2015 Lecture #3 Microcontroller Instruction Set 18-348 Embedded System Engineering Philip Koopman Wednesday, 20-Jan-2015 Electrical& Computer ENGINEERING Copyright 2006-2015, Philip Koopman, All Rights Reserved

More information

What is an Addressing Mode?

What is an Addressing Mode? Addressing Modes 1 2 What is an Addressing Mode? An addressing mode is a way in which an operand is specified in an instruction. There are different ways in which an operand may be specified in an instruction.

More information

Lecture #2 January 30, 2004 The 6502 Architecture

Lecture #2 January 30, 2004 The 6502 Architecture Lecture #2 January 30, 2004 The 6502 Architecture In order to understand the more modern computer architectures, it is helpful to examine an older but quite successful processor architecture, the MOS-6502.

More information

User s Guide. pico Viewer v.1.01

User s Guide. pico Viewer v.1.01 User s Guide pico Viewer 6502 v.1.01 ii User s Guide Copyright Notice This documentation and the software described herein are copyrighted with all rights reserved. Under the copyright laws, neither this

More information

Assembly Language Programming of 8085

Assembly Language Programming of 8085 Assembly Language Programming of 8085 Topics 1. Introduction 2. Programming model of 8085 3. Instruction set of 8085 4. Example Programs 5. Addressing modes of 8085 6. Instruction & Data Formats of 8085

More information

Chapter 2: HCS12 Assembly Programming. EE383: Introduction to Embedded Systems University of Kentucky. Samir Rawashdeh

Chapter 2: HCS12 Assembly Programming. EE383: Introduction to Embedded Systems University of Kentucky. Samir Rawashdeh Chapter 2: HCS12 Assembly Programming EE383: Introduction to Embedded Systems University of Kentucky Samir Rawashdeh With slides based on material by H. Huang Delmar Cengage Learning 1 Three Sections of

More information

CPU08RM/AD REV 3 8M68HC08M. CPU08 Central Processor Unit. Reference Manual

CPU08RM/AD REV 3 8M68HC08M. CPU08 Central Processor Unit. Reference Manual CPU08RM/AD REV 3 68HC08M6 HC08M68HC 8M68HC08M CPU08 Central Processor Unit Reference Manual blank CPU08 Central Processor Unit Reference Manual Motorola reserves the right to make changes without further

More information

Quicksort (for 16-bit Elements)

Quicksort (for 16-bit Elements) 2017-09-21 17:30 1/9 Quicksort (for 16-bit Elements) Quicksort (for 16-bit Elements) by Vladimir Lidovski aka litwr, 13 Aug 2016 (with help of BigEd) It is well known that the best, the fastest sort routine

More information

User Manual for KRUSADER. Ken s Rather Useless Symbolic Assembly Development Environment for the Replica 1 or is that Reasonably Useful? You decide!

User Manual for KRUSADER. Ken s Rather Useless Symbolic Assembly Development Environment for the Replica 1 or is that Reasonably Useful? You decide! User Manual for KRUSADER Ken s Rather Useless Symbolic Assembly Development Environment for the Replica 1 or is that Reasonably Useful? You decide! Ken Wessen ken.wessen@gmail.com Version 1.3 December

More information

MOS 6502 Architecture

MOS 6502 Architecture MOS 6502 Architecture Lecture 3 Fall 17 1 History Origins lie in the Motorola 6800. Was very expensive for consumers. ($300, or about $1500 in 2017 $s) Chuck Peddle proposes lower-cost, lower-area 6800

More information

Grundlagen Microcontroller Processor Core. Günther Gridling Bettina Weiss

Grundlagen Microcontroller Processor Core. Günther Gridling Bettina Weiss Grundlagen Microcontroller Processor Core Günther Gridling Bettina Weiss 1 Processor Core Architecture Instruction Set Lecture Overview 2 Processor Core Architecture Computes things > ALU (Arithmetic Logic

More information

Micro-KIM Tutorial. Aart J.C. Bik

Micro-KIM Tutorial. Aart J.C. Bik Micro-KIM Tutorial Aart J.C. Bik http://www.aartbik.com/ 1 Getting Started Perhaps reminiscing the past is a sign of getting older, but I cannot help but look back fondly at the times I learned programming

More information

Apple /// Business BASIC Peek/Poke Invokable Module Information

Apple /// Business BASIC Peek/Poke Invokable Module Information APPLE /// COMPUTER INFORMATION Apple /// Business BASIC Peek/Poke Invokable Module Information Source Dr. John Jeppson SOFTALK magazine -- August 1982 -- pages 38-48 Compiled By David T Craig -- December

More information

G65SC802 G65SC816. Microcircuits. CMOS 8-Bit/16-Bit Microprocessor Family ADVANCE INFORMATION. Features. General Description. Features (G65SC802 Only)

G65SC802 G65SC816. Microcircuits. CMOS 8-Bit/16-Bit Microprocessor Family ADVANCE INFORMATION. Features. General Description. Features (G65SC802 Only) G65SC802 G65SC816 Microcircuits CMOS 8-Bit/16-Bit Microprocessor Family Features Advanced CMOS design for low power consumption and increased noise immunity Emulation mode for total software compatibility

More information

Programming the 65816

Programming the 65816 Programming the 65816 Including the 6502, 65C02 and 65802 Distributed and published under COPYRIGHT LICENSE AND PUBLISHING AGREEMENT with Authors David Eyes and Ron Lichty EFFECTIVE APRIL 28, 1992 Copyright

More information

ME 6405 Introduction to Mechatronics

ME 6405 Introduction to Mechatronics ME 6405 Introduction to Mechatronics Fall 2005 Instructor: Professor Charles Ume LECTURE 9 Homework 1 Solution 1. Write an assembly language program to clear the usable internal RAM in the M68HC11E9. Solution:

More information

Mark II Aiken Relay Calculator

Mark II Aiken Relay Calculator Introduction to Embedded Microcomputer Systems Lecture 6.1 Mark II Aiken Relay Calculator 2.12. Tutorial 2. Arithmetic and logical operations format descriptions examples h 8-bit unsigned hexadecimal $00

More information

A Technical Overview of Commodore Copy Protection. Glenn Holmer ( ShadowM ) World of Commodore Expo, 12/01/2007

A Technical Overview of Commodore Copy Protection. Glenn Holmer ( ShadowM )   World of Commodore Expo, 12/01/2007 A Technical Overview of Commodore Copy Protection Glenn Holmer ( ShadowM ) www.lyonlabs.org/commodore/c64.html World of Commodore Expo, 12/01/2007 Why Talk About This? These skills were a black art to

More information

ECET Chapter 2, Part 3 of 3

ECET Chapter 2, Part 3 of 3 ECET 310-001 Chapter 2, Part 3 of 3 W. Barnes, 9/2006, rev d. 10/07 Ref. Huang, Han-Way, The HCS12/9S12: An Introduction to Software and Hardware Interfacing, Thomson/Delmar. In This Set of Slides: 1.

More information

BRANCH IF REGISTER IS HIGHER/GREATHER/ THAN OPERAND e.g. CMPA #$D0

BRANCH IF REGISTER IS HIGHER/GREATHER/ THAN OPERAND e.g. CMPA #$D0 Midterm Review 1. Branch instructions BHI (unsigned), BGT (signed) Take a look at the preceding comparison instruction. Then, you can use this instead of using complex formula in the instruction reference.

More information

Menu Computer Organization Programming Model for the an example microprocessors (the G-CPU & Motorola 68HC11) Assembly Programming Look into my...

Menu Computer Organization Programming Model for the an example microprocessors (the G-CPU & Motorola 68HC11) Assembly Programming Look into my... Menu Computer Organization Programming Model for the an example microprocessors (the G-CPU & Motorola 68HC11) Assembly Programming Look into my... See examples on web: DirAddr.asm, ExtAddr.asm, IndAddr.asm,

More information

CSIS1120A. 10. Instruction Set & Addressing Mode. CSIS1120A 10. Instruction Set & Addressing Mode 1

CSIS1120A. 10. Instruction Set & Addressing Mode. CSIS1120A 10. Instruction Set & Addressing Mode 1 CSIS1120A 10. Instruction Set & Addressing Mode CSIS1120A 10. Instruction Set & Addressing Mode 1 Elements of a Machine Instruction Operation Code specifies the operation to be performed, e.g. ADD, SUB

More information

INSTRUCTION SET AND EXECUTION

INSTRUCTION SET AND EXECUTION SECTION 6 INSTRUCTION SET AND EXECUTION Fetch F1 F2 F3 F3e F4 F5 F6 Decode D1 D2 D3 D3e D4 D5 Execute E1 E2 E3 E3e E4 Instruction Cycle: 1 2 3 4 5 6 7 MOTOROLA INSTRUCTION SET AND EXECUTION 6-1 SECTION

More information

NMOS 6510 Unintended Opcodes

NMOS 6510 Unintended Opcodes NMOS 6510 Unintended Opcodes no more secrets (v0.92-24/12/17) (w) 2013-2017 groepaz/solution, all rights reversed Contents Preface...I Scope of this Document...I Intended Audience...I License...I What

More information

Disassembly of MC9S12 op codes Decimal, Hexadecimal and Binary Numbers

Disassembly of MC9S12 op codes Decimal, Hexadecimal and Binary Numbers Disassembly of MC9S12 op codes Decimal, Hexadecimal and Binary Numbers o How to disassemble an MC9S12 instruction sequence o Binary numbers are a code and represent what the programmer intends for the

More information

Disassembly of MC9S12 op codes Decimal, Hexadecimal and Binary Numbers

Disassembly of MC9S12 op codes Decimal, Hexadecimal and Binary Numbers Disassembly of MC9S12 op codes Decimal, Hexadecimal and Binary Numbers o How to disassemble an MC9S12 instruction sequence o Binary numbers are a code and represent what the programmer intends for the

More information

Using the stack and the stack pointer

Using the stack and the stack pointer Using the stack and the stack pointer o The Stack and Stack Pointer o The stack is a memory area for temporary storage o The stack pointer points to the last byte in the stack o Some instructions which

More information

HC11 Instruction Set Architecture

HC11 Instruction Set Architecture HC11 Instruction Set Architecture High-level HC11 architecture Interrupt logic MEMORY Timer and counter M8601 CPU core Serial I/O A/D converter Port A Port B Port C Port D Port E CMPE12 Summer 2009 16-2

More information

OSIAC Read OSIAC 5362 posted on the course website

OSIAC Read OSIAC 5362 posted on the course website OSIAC 5362 Read OSIAC 5362 posted on the course website The Basic Structure of Control Unit m CLK Run/Inhibit Control Step Counter m Preset (to any new state) Reset IR Decoder/Encoder (combinational logic)

More information

1. Memory Mapped Systems 2. Adding Unsigned Numbers

1. Memory Mapped Systems 2. Adding Unsigned Numbers 1 Memory Mapped Systems 2 Adding Unsigned Numbers 1 1 Memory Mapped Systems Our system uses a memory space Address bus is 16-bit locations Data bus is 8-bit 2 Adding Unsigned Numbers 2 Our system uses

More information

HC11 Instruction Set Architecture

HC11 Instruction Set Architecture HC11 Instruction Set Architecture Summer 2008 High-level HC11 architecture Interrupt logic MEMORY Timer and counter M8601 CPU core Serial I/O A/D converter Port A Port B Port C Port D Port E CMPE12 Summer

More information

68HC11 PROGRAMMER'S MODEL

68HC11 PROGRAMMER'S MODEL 8H11 PROGRMMER'S MODEL s (,, and D) s and are general-purpose 8-bit accumulators used to hold operands and results of arithmetic calculations or data manipulations. Some instructions treat the combination

More information

Programming. A. Assembly Language Programming. A.1 Machine Code. Machine Code Example: Motorola ADD

Programming. A. Assembly Language Programming. A.1 Machine Code. Machine Code Example: Motorola ADD A. Assembly Language Programming Programming of a computer system: Machine code direct execution Assembly language tool: assembler High level programming language tool: interpreter tool: compiler Programming

More information

Chapter 11. Instruction Sets: Addressing Modes and Formats. Yonsei University

Chapter 11. Instruction Sets: Addressing Modes and Formats. Yonsei University Chapter 11 Instruction Sets: Addressing Modes and Formats Contents Addressing Pentium and PowerPC Addressing Modes Instruction Formats Pentium and PowerPC Instruction Formats 11-2 Common Addressing Techniques

More information

4 bits Microcontroller

4 bits Microcontroller EM MICROELECTRONIC - MARIN SA Question & answer 4 bits Microcontroller Questions and s Copyright 2001, EM Microelectronic-Marin SA 1 www.emmicroelectronic.com 1 Q: Is there an instruction to rotate left

More information

NAM M6800 DISK-BUG DS VER 3.5 OPT PAG

NAM M6800 DISK-BUG DS VER 3.5 OPT PAG NAM M6800 DISK-BUG DS VER 3.5 OPT PAG Floppy Disk Controller Debug Monitor Written 27 Aug 1980 Michael Holley Record of modifications 18 OCT 1981 Disk routines DC-1 23 JAN 1982 Command Table 8 MAY 1982

More information

AN1745. Interfacing the HC705C8A to an LCD Module By Mark Glenewinkel Consumer Systems Group Austin, Texas. Introduction

AN1745. Interfacing the HC705C8A to an LCD Module By Mark Glenewinkel Consumer Systems Group Austin, Texas. Introduction Order this document by /D Interfacing the HC705C8A to an LCD Module By Mark Glenewinkel Consumer Systems Group Austin, Texas Introduction More and more applications are requiring liquid crystal displays

More information

538 Lecture Notes Week 5

538 Lecture Notes Week 5 538 Lecture Notes Week 5 (October 4, 2017) 1/18 538 Lecture Notes Week 5 Announements Midterm: Tuesday, October 25 Answers to last week's questions 1. With the diagram shown for a port (single bit), what

More information

INSTITUTE OF ENGINEERING AND MANAGEMENT, KOLKATA Microprocessor

INSTITUTE OF ENGINEERING AND MANAGEMENT, KOLKATA Microprocessor INSTITUTE OF ENGINEERING AND MANAGEMENT, KOLKATA Microprocessor Subject Name: Microprocessor and Microcontroller Year: 3 rd Year Subject Code: CS502 Semester: 5 th Module Day Assignment 1 Microprocessor

More information

Systems Architecture I

Systems Architecture I Systems Architecture I Topics Assemblers, Linkers, and Loaders * Alternative Instruction Sets ** *This lecture was derived from material in the text (sec. 3.8-3.9). **This lecture was derived from material

More information

538 Lecture Notes Week 5

538 Lecture Notes Week 5 538 Lecture Notes Week 5 (Sept. 30, 2013) 1/15 538 Lecture Notes Week 5 Answers to last week's questions 1. With the diagram shown for a port (single bit), what happens if the Direction Register is read?

More information

CS401 - Computer Architecture and Assembly Language Programming Glossary By

CS401 - Computer Architecture and Assembly Language Programming Glossary By CS401 - Computer Architecture and Assembly Language Programming Glossary By absolute address : A virtual (not physical) address within the process address space that is computed as an absolute number.

More information

SECTION 6 CENTRAL PROCESSING UNIT

SECTION 6 CENTRAL PROCESSING UNIT SECTION 6 CENTRAL PROCESSING UNIT This section discusses the M68HC11 central processing unit (CPU), which is responsible for executing all software instructions in their programmed sequence. The M68HC11

More information

Exam I Review February 2017

Exam I Review February 2017 Exam I Review February 2017 Binary Number Representations Conversion of binary to hexadecimal and decimal. Convert binary number 1000 1101 to hexadecimal: Make groups of 4 bits to convert to hexadecimal,

More information

We briefly explain an instruction cycle now, before proceeding with the details of addressing modes.

We briefly explain an instruction cycle now, before proceeding with the details of addressing modes. Addressing Modes This is an important feature of computers. We start with the known fact that many instructions have to include addresses; the instructions should be short, but addresses tend to be long.

More information

CS2304-SYSTEM SOFTWARE 2 MARK QUESTION & ANSWERS. UNIT I INTRODUCTION

CS2304-SYSTEM SOFTWARE 2 MARK QUESTION & ANSWERS. UNIT I INTRODUCTION CS2304-SYSTEM SOFTWARE 2 MARK QUESTION & ANSWERS. UNIT I INTRODUCTION 1. Define System Software. System software consists of a variety of programs that supports the operations of a computer. Eg. Compiler,

More information

S12CPUV2. Reference Manual HCS12. Microcontrollers. S12CPUV2/D Rev. 0 7/2003 MOTOROLA.COM/SEMICONDUCTORS

S12CPUV2. Reference Manual HCS12. Microcontrollers. S12CPUV2/D Rev. 0 7/2003 MOTOROLA.COM/SEMICONDUCTORS HCS12 Microcontrollers /D Rev. 0 7/2003 MOTOROLA.COM/SEMICONDUCTORS To provide the most up-to-date information, the revision of our documents on the World Wide Web will be the most current. Your printed

More information

2. Arithmetic Instructions addition, subtraction, multiplication, divison (HCS12 Core Users Guide, Sections 4.3.4, and ).

2. Arithmetic Instructions addition, subtraction, multiplication, divison (HCS12 Core Users Guide, Sections 4.3.4, and ). AS12 Assembler Directives A Summary of 9S12 instructions Disassembly of 9S12 op codes Huang Section 1.8, Chapter 2 MC9S12 V1.5 Core User Guide Version 1.2, Section 12 o A labels is a name assigned the

More information

Free for personal use but you must have written permission to reproduce

Free for personal use but you must have written permission to reproduce www.commodore.ca www.commodore.ca Commodore Business Machines, Inc. 901 California Avenue Palo Alto, California 94304, USA Commodore/MOS Valley Forge Corporate Center 950 Rittenhouse Road Norristown, Pennsylvania

More information

3.0 Instruction Set. 3.1 Overview

3.0 Instruction Set. 3.1 Overview 3.0 Instruction Set 3.1 Overview There are 16 different P8 instructions. Research on instruction set usage was the basis for instruction selection. Each instruction has at least two addressing modes, with

More information

MC9S12 Assembler Directives A Summary of MC9S12 Instructions Disassembly of MC9S12 op codes. Summary of HCS12 addressing modes ADDRESSING MODES

MC9S12 Assembler Directives A Summary of MC9S12 Instructions Disassembly of MC9S12 op codes. Summary of HCS12 addressing modes ADDRESSING MODES MC9S12 Assembler Directives A Summary of MC9S12 Instructions Disassembly of MC9S12 op codes o Review of Addressing Modes o Which branch instruction to use (signed vs unsigned) o Using X and Y registers

More information

M2 Instruction Set Architecture

M2 Instruction Set Architecture M2 Instruction Set Architecture Module Outline Addressing modes. Instruction classes. MIPS-I ISA. High level languages, Assembly languages and object code. Translating and starting a program. Subroutine

More information

Aug.3, W65C816S 8/16 bit Microprocessor

Aug.3, W65C816S 8/16 bit Microprocessor Aug., 9 WC8S 8/ bit Microprocessor WDC reserves the right to make changes at any time without notice in order to improve design and supply the best possible product. Information contained herein is provided

More information

W65C816S 8/16 bit Microprocessor

W65C816S 8/16 bit Microprocessor November 9, 8 WC8S 8/ bit Microprocessor WDC reserves the right to make changes at any time without notice in order to improve design and supply the best possible product. Information contained herein

More information

NMOS 6510 Unintended Opcodes

NMOS 6510 Unintended Opcodes NMOS 6510 Unintended Opcodes no more secrets (Christmas release, 24/12/14) (w) 2013-2014 groepaz/hitmen, all rights reversed Contents Preface...I Scope of this Document...I Intended Audience...I What you

More information

CHAPTER ASSEMBLY LANGUAGE PROGRAMMING

CHAPTER ASSEMBLY LANGUAGE PROGRAMMING CHAPTER 2 8051 ASSEMBLY LANGUAGE PROGRAMMING Registers Register are used to store information temporarily: A byte of data to be processed An address pointing to the data to be fetched The vast majority

More information

ISA and RISCV. CASS 2018 Lavanya Ramapantulu

ISA and RISCV. CASS 2018 Lavanya Ramapantulu ISA and RISCV CASS 2018 Lavanya Ramapantulu Program Program =?? Algorithm + Data Structures Niklaus Wirth Program (Abstraction) of processor/hardware that executes 3-Jul-18 CASS18 - ISA and RISCV 2 Program

More information

Instruction Set Design

Instruction Set Design Instruction Set Design software instruction set hardware CPE442 Lec 3 ISA.1 Instruction Set Architecture Programmer's View ADD SUBTRACT AND OR COMPARE... 01010 01110 10011 10001 11010... CPU Memory I/O

More information

Instruction Set Instruction set of 8085 can be classified in following groups: Data Transfer Instructions These instructions can perform data transfer operations between Registers of 8085 e.g. MOV 8085

More information

CN310 Microprocessor Systems Design

CN310 Microprocessor Systems Design CN310 Microprocessor Systems Design Instruction Set (AVR) Nawin Somyat Department of Electrical and Computer Engineering Thammasat University Outline Course Contents 1 Introduction 2 Simple Computer 3

More information

SCRAM Introduction. Philipp Koehn. 19 February 2018

SCRAM Introduction. Philipp Koehn. 19 February 2018 SCRAM Introduction Philipp Koehn 19 February 2018 This eek 1 Fully work through a computer circuit assembly code Simple but Complete Random Access Machine (SCRAM) every instruction is 8 bit 4 bit for op-code:

More information

PESIT Bangalore South Campus

PESIT Bangalore South Campus INTERNAL ASSESSMENT TEST 2 Date : 02/04/2018 Max Marks: 40 Subject & Code : Microprocessor (15CS44) Section : IV A and B Name of faculty: Deepti.C Time : 8:30 am-10:00 am Note: Note: Answer any five complete

More information

SRI VENKATESWARA COLLEGE OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF ECE EC6504 MICROPROCESSOR AND MICROCONTROLLER (REGULATION 2013)

SRI VENKATESWARA COLLEGE OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF ECE EC6504 MICROPROCESSOR AND MICROCONTROLLER (REGULATION 2013) SRI VENKATESWARA COLLEGE OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF ECE EC6504 MICROPROCESSOR AND MICROCONTROLLER (REGULATION 2013) UNIT I THE 8086 MICROPROCESSOR PART A (2 MARKS) 1. What are the functional

More information

8051 Overview and Instruction Set

8051 Overview and Instruction Set 8051 Overview and Instruction Set Curtis A. Nelson Engr 355 1 Microprocessors vs. Microcontrollers Microprocessors are single-chip CPUs used in microcomputers Microcontrollers and microprocessors are different

More information

Chapter 2A Instructions: Language of the Computer

Chapter 2A Instructions: Language of the Computer Chapter 2A Instructions: Language of the Computer Copyright 2009 Elsevier, Inc. All rights reserved. Instruction Set The repertoire of instructions of a computer Different computers have different instruction

More information

ARM Assembly Language. Programming

ARM Assembly Language. Programming Outline: ARM Assembly Language the ARM instruction set writing simple programs examples Programming hands-on: writing simple ARM assembly programs 2005 PEVE IT Unit ARM System Design ARM assembly language

More information

Application Note. Interfacing the CS5525/6/9 to the 68HC05. By Keith Coffey MOSI (PD3) SDO MISO (PD2) SCLK. Figure 1. 3-Wire and 4-Wire Interfaces

Application Note. Interfacing the CS5525/6/9 to the 68HC05. By Keith Coffey MOSI (PD3) SDO MISO (PD2) SCLK. Figure 1. 3-Wire and 4-Wire Interfaces Application Note Interfacing the CS5525/6/9 to the 68HC05 By Keith Coffey INTRODUCTION This application note details the interface of Crystal Semiconductor s CS5525/6/9 Analog-to-Digital Converter (ADC)

More information

Practical Course File For

Practical Course File For Practical Course File For Microprocessor (IT 473) B.Tech (IT) IV-SEM Department of IT University Institute of Engineering & Technology Panjab University, Chandigarh Page 1 INTRODUCTION... 4 EXPERIMENT-1:

More information

Outline. 2.8 Stack. 2.9 Subroutines

Outline. 2.8 Stack. 2.9 Subroutines Outline 21 Assembly language program structure 22 Data transfer instructions 23 Arithmetic instructions 24 Branch and loop instructions 25 Shift and rotate instructions 26 Boolean logic instructions 27

More information

Blog - https://anilkumarprathipati.wordpress.com/

Blog - https://anilkumarprathipati.wordpress.com/ Control Memory 1. Introduction The function of the control unit in a digital computer is to initiate sequences of microoperations. When the control signals are generated by hardware using conventional

More information

SECTION 6 INSTRUCTION SET INTRODUCTION

SECTION 6 INSTRUCTION SET INTRODUCTION SECTION 6 INSTRUCTION SET INTRODUCTION Fetch F1 F2 F3 F3e F4 F5 F6... Decode D1 D2 D3 D3e D4 D5... Execute E1 E2 E3 E3e E4... Instruction Cycle: 1 2 3 4 5 6 7... MOTOROLA INSTRUCTION SET INTRODUCTION 6-1

More information

EE 5340/7340 Motorola 68HC11 Microcontroler Lecture 1. Carlos E. Davila, Electrical Engineering Dept. Southern Methodist University

EE 5340/7340 Motorola 68HC11 Microcontroler Lecture 1. Carlos E. Davila, Electrical Engineering Dept. Southern Methodist University EE 5340/7340 Motorola 68HC11 Microcontroler Lecture 1 Carlos E. Davila, Electrical Engineering Dept. Southern Methodist University What is Assembly Language? Assembly language is a programming language

More information

Computers and Microprocessors

Computers and Microprocessors Computers and Microprocessors - Introduction Over the last few decades, computers, and microprocessors in particular, have begun to have an enormous impact upon our lives. In early stages of development,

More information