This training course provides additional details about the CPU architecture of the MCUs in the M16C/2x and M16C/6x series.
|
|
- Frederick Powell
- 6 years ago
- Views:
Transcription
1 Course Introduction Purpose This training course provides additional details about the CPU architecture of the MCUs in the M16C/2x and M16C/6x series. Objectives Understand the instruction set and addressing modes. Learn about Near and Far memory locations. Discover specialized instructions in the CISC core that reduce code size and increase system performance. Content 22 pages 4 questions Learning Time 33 minutes 1
2 Format of Instructions Op-code Mnemonic Size Specifier Jump-distance Specifier Format Specifier MOV.size.length:format Operation src, dest Operand Example: MOV.W:G Operation R0, R1 Operand 2
3 Memory-Memory Operation Load-Store Register-memory operation is available. M16C Memory-Memory Operation Register-register, register-memory, and memory-memory operations are available. RAM1 1 Reg RAM RAM1 RAM PUSH Reg LDA Reg, RAM1 AND Reg, RAM2 STA Reg, RAM2 Pop Reg 1 AND.B RAM1[SB], RAM2[SB] 6-byte 4-byte
4 Read-Modify-Write Operation Typical MCU Operation LDA Port1, Reg AND #7, Reg STA Reg, Port1 If an interrupt occurs between instruction 1 and instruction 3, the value in Port1 could be changed by another function prior to data being written back. M16C Read-Modify-Write Operation 1 AND.B #7, Port1 Since this is a single instruction, an interrupt will not be accepted until the instruction is completed. Thus, another function won t be able to modify the port content.
5 PROPERTIES On passing, 'Finish' button: On failing, 'Finish' button: Allow user to leave quiz: User may view slides after quiz: User may attempt quiz: Goes to Next Slide Goes to Slide After user has completed quiz After passing quiz Unlimited times
6 Instruction Set Types of Operations Instructions Data Transfer (14) Arithmetic (21) MOV,MOVA,PUSH,PUSHM,PUSHA,POP,POPM,LDE, STE,MOVDir,XCHG,STZ,STNZ,STZX ADD,ADC,ADCF,SUB,SBB,MUL,MULUU, DIV,DIVU,DIVX,DADD,DADC.DSUB,DSBB, INC,DEC,RMPA,CMP,ABS,EXTS,NEG Shift/Logic (10) Branch/Jump (10) Bit Manipulation (14) AND,OR,XOR,NOT,TST,SHL,SHA,ROT,RORC,ROLC JMP,JCnd,JMPI,JMPS,JSR,JSRI,JSRS,RTS,ADJNZ, SBJNZ BCLR,BSET,BNOT,BTST,BNTST,BAND,BNAND, BOR,BNOR,BXOR,BXNOR,BCmd,BTSTS,BTSTC String Instructions (3) Control/ Other Instructions (19) SMOVF,SMOVB,SSTR LDC,STC,LDINTB,LDIPL,PUSHC,POPC,FSET,FCLR LDCTX,STCTX,ENTER,EXITD,BRK,REIT,INT,INTO, UND,WAIT,NOP 6
7 Addressing Modes Addressing Mode Symbol Comment Immediate #imm:8/16 Operands are data to work with. Absolute abs16,abs20 Operands are 16 or 20-bit addresses. Register Direct Rn Operand is register to work on. Address Register Indirect [An] Pointer is formed using value in register indicated in operand. Address Register Relative dsp:8[an] dsp:16[an] dsp:20[an] Same as Address Register Indirect, but with an offset value added to contents of register. SB Relative dsp:8[sb] dsp:16[sb] Pointer is formed by value in SB register plus unsigned displacement. FB Relative dsp:8[fb] Pointer is formed by value in FB register plus signed displacement. SP Relative dsp:8[sp] Pointer is formed by value in SP register plus signed displacement. Program-Counter Relative (special addressing mode) Jump commands 7
8 Far and Near Memory All address registers are 16 bits wide in the M16C CPU core. MOV instructions can only access Near memory (first 64KB). MOV.B [A0],-1H[FB] MOV.W -1H[FB],R0 LDE and STE instructions are used to access Far memory (addresses outside the first 64KB). Extended instructions use a 20-bit operand, or a 20-bit operand plus address register, to access total memory area. LDE.B #D0000H[A0],422H LDE.W #D0000H[A0],R0 STE.B R0, #D0000H Extended instructions can also use A1A0 combined to form the address. STE.W 422H, [A1A0] 8
9 High-Speed Operations 60.0% 50.0% 50.8% 60.0% 50.0% There are 10,222 combinations of instructions and addressing modes for the M16C CPU core. 40.0% 30.0% 40.0% 30.0% 20.0% 18.0% 20.0% 11.3% 10.0% 10.0% 2.1% 0.0% 3.3% 3.0% 4.2% 2.4% 3.2% 0.2% 1.4% 0.0% 1 cycle 2 cycle 3 cycle 4 cycle 5 cycle 6 cycle 7cycle 8 cycle 9 cycle 10 cycle 11cycle more
10 PROPERTIES On passing, 'Finish' button: On failing, 'Finish' button: Allow user to leave quiz: User may view slides after quiz: User may attempt quiz: Goes to Next Slide Goes to Slide After user has completed quiz After passing quiz Unlimited times
11 Specialized Instructions CISC cores have specialized instructions for common tasks that increase the efficiency of the MCU in typical embedded applications. Some of the special instructions that the M16C devices provide are: Multiply Divide Bit Manipulation String Move Forward ENTER/EXITD PUSHM/POPM RMPA SMOVF 11
12 Multiply Instruction MUL.size src, dest dest dest x src src ROL/RO ROH/R1 R1L/R2 R1H/R3 A0/A0 A1/A1 [A0] [A1] dsp:8[a0] dsp:8[a1] dsp:8[sb] dsp:8[fb] dsp:16[a0] dsp:16[a1] dsp:16[sb] abs16 dest ROL/RO R1 R1L A0/A0 [A0] [A1] dsp:8[a0] dsp:8[a1] dsp:8[sb] dsp:8[fb] dsp:16[a0] dsp:16[a1] dsp:16[sb] abs16 #IMM If you select (.W) for the size specifier, then src and dest both are operated on in 16 bits and the result is stored in 32 bits. If you specified R0, R1, or A0 for dest, then the result is stored in R2R0, R3R1, or A1A0 accordingly. If you select (.B) for the size specifier and the source is an address register, the operation is performed on the address register s eight low-order bits. Examples MUL.B MUL.W MUL.B MUL.W A0, ROL #3, R0 R0L, R1L R0, [A0] Multiplies lower byte of A0 and lower byte of R0 and stores result R0 (16 bits). Multiplies 16 bit R0 by 3 and stores result R2R0 (32 bits). Multiplies lower bytes of R0 and R1 and stores the result in R1. Multiplies value in R0 with value in memory pointed to by A0 and stores the 32-bit result in the location pointed to by A0. 12
13 Divide Instruction DIV.size src src ROL/RO ROH/R1 R1L/R2 R1H/R3 A0/A0 A1/A1 [A0] [A1] dsp:8[a0] dsp:8[a1] dsp:8[sb] dsp:8[fb] dsp:16[a0] dsp:16[a1] dsp:16[sb] abs16 #IMM If you select (.W) for the size specifier, R0 (quotient), R2 (remainder) R2R0 src If you select (.B) for the size specifier, R0L (quotient), R0H (remainder) R0 src If you select (.B) for the size specifier and source is address register, the operation is performed on the address register s eight low-order bits. Examples DIV.B A0 DIV.W A1 DIV.B -2H[FB] DIV.W -2H[FB] Divides value in R0 by lower byte of A0; R0L is quotient and R0H is remainder. Divides value in R2R0 by word in A1; R0 is quotient and R2 is remainder. Divides R0 by byte in memory (FB register -2); R0L is quotient and R0H is remainder. Divides R2R0 by word in memory (FB register -2); R0 is quotient and R2 is remainder. 13
14 Bit Manipulation Instruction BSET dest BCLR dest Bits can be addressed within a byte, or directly from an offset in a 64Kbit (8KB) range. b7 b0 Example BCLR 3,RAM BCLR 1,R0 BCLR [A0] Operation BSET 42,RAM RAM RAM Set this bit Or BSET 2,RAM+5 RAM
15 String Move Forward Instruction SMOVF.size SIZE = W OR B Repeat M(A1) M(2^16 X R1H + A0) A0 A0 +2 (increments by 1 if size = B) A1 A1 +2 ( increments by 1 is size = B) R3 R3-1 Until R3 = 0 1. If A0 overflows, R1H is incremented. 2. If R3 is set to 0, this instruction is ignored. 3. Only the source can be Far data. 4. If an interrupt occurs, the interrupt will be acknowledged after one data transfer. Note: The M16C architecture also has a SMOVB instruction that decrements the address pointers. 15
16 PROPERTIES On passing, 'Finish' button: On failing, 'Finish' button: Allow user to leave quiz: User may view slides after quiz: User may attempt quiz: Goes to Next Slide Goes to Slide After user has completed quiz After passing quiz Unlimited times
17 Push Multiple Instructions PUSHM src This instruction saves the registers selected by src to the stack area. Registers are saved to the stack area in the following order: b7 b0 FB SB A1 A0 R3 R2 R1 R0 Saved sequentially beginning with FB PUSHM R2,R1,R0 PUSHM FB,SB In this example, the data in R0, R1, and R2 are being saved to the stack and the actual operand value would be 7. In this example, the operand value would be C0 hex. The PUSHM and POPM instructions are also useful when register information must be stored before an operation; e.g., as part of a subroutine call. 17
18 Pop Multiple Instructions POPM dest This instruction restores the registers selected by dest from the stack area. The registers are restored in the following order: b7 b0 FB SB A1 A0 R3 R2 R1 R0 Restored sequentially beginning with R0 POPM R2,R1,R0 In this example, R0, R1, and R2 are being restored from the stack and the operand would be 7. POPM FB,SB In this example, the operand would be C0 hex. 18
19 Optimized C Language Instructions ENTER and EXITD Creates Stack Frame main( ) { } int i, j ; i = j = 0 ; i = j + 5 ;. ENTER #4 [3-byte SP instruction] 2 int. areas (total of 4 bytes) EXITD [2-byte instruction] Return from function. FB Return address PC saved by JSR i j FB Return address SP SP FB Return address Save FB FB Return address FB Removes Stack Frame SP FB Return address Put SP to FB Return address SP FB SP i j FB Return address Move SP by 4 bytes Remove Auto Area Restore FB Return (Restore PC)
20 Sum-of-Products Instruction RMPA.size Multiplicand address : A0 Multiplier address : A1 Sum-of product calculation number : R3 Sum-of products register (result of operation) : R2R0 ( if.w is specified); R0 ( if.b is specified) Example: RMPA.W R2 R0 A0 x a + = R2 R0 Result of operation a R3 x b + = R2 R0 Result of operation b x c + = R2 R0 Result of operation c x d + = R2 R0 Result of operation d A1 If an overflow occurs during operation, the O flag is set to terminate the operation. If an interrupt request is received during instruction execution, the interrupt is acknowledged after the sum-of products addition has been completed. 20
21 PROPERTIES On passing, 'Finish' button: On failing, 'Finish' button: Allow user to leave quiz: User may view slides after quiz: User may attempt quiz: Goes to Next Slide Goes to Slide After user has completed quiz After passing quiz Unlimited times
22 Course Summary Instruction set and addressing modes Execution instruction times Near and Far memory Powerful instructions of the M16C core Multiply Divide Bit Manipulation ENTER/EXITD PUSHM/POPM RMPA SMOVF 22
R8C/Tiny Series Software Manual
Z 16 R8C/Tiny Series Software Manual RENESAS 16-BIT SINGLE-CHIP MICROCOMPUTER Rev. 2.00 Revision date: Oct 17, 2005 www.renesas.com Keep safety first in your circuit designs! 1. Renesas Technology Corp.
More information2. 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 informationCSIS1120A. 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 informationH8/300L Series Programming Manual
H8/300L Series Programming Manual Notice When using this document, keep the following in mind: 1. This document may, wholly or partially, be subject to change without notice. 2. All rights are reserved:
More informationGrundlagen 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 informationStacks and Function Calls
Stacks and Function Calls Embedded Systems 3-1 Remember the Memory Map for Our MCU Embedded Systems 3-2 Classifying Data Variables Automatic declared within a function Only exist while the function executes
More informationMC9S12 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 informationDisassembly 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 informationDisassembly 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 informationMicrocontrollers. Microcontroller
Microcontrollers Microcontroller A microprocessor on a single integrated circuit intended to operate as an embedded system. As well as a CPU, a microcontroller typically includes small amounts of RAM and
More informationProgramming of 8085 microprocessor and 8051 micro controller Study material
8085 Demo Programs Now, let us take a look at some program demonstrations using the above instructions Adding Two 8-bit Numbers Write a program to add data at 3005H & 3006H memory location and store the
More informationUNIT-III ASSEMBLY LANGUAGE PROGRAMMING. The CPU can access data in various ways, which are called addressing modes
8051 Software Overview: 1. Addressing Modes 2. Instruction Set 3. Programming 8051 Addressing Modes: UNIT-III ASSEMBLY LANGUAGE PROGRAMMING The CPU can access data in various ways, which are called addressing
More informationMitsubishi M16C Instruction Set Architecture
Mitsubishi M16C Instruction Set Architecture Lecture 2 Embedded Systems 2-1 Today Learn about Mitsubishi (Renesas) processor Lecture covers ISA, derived from Assembler Language Programming Manual (M16C_Assembler.pdf
More information8051 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 informationMicroprocessors 1. The 8051 Instruction Set. Microprocessors 1 1. Msc. Ivan A. Escobar Broitman
Microprocessors 1 The 8051 Instruction Set Microprocessors 1 1 Instruction Groups The 8051 has 255 instructions Every 8-bit opcode from 00 to FF is used except for A5. The instructions are grouped into
More informationMicrocontroller Intel [Instruction Set]
Microcontroller Intel 8051 [Instruction Set] Structure of Assembly Language [ label: ] mnemonic [operands] [ ;comment ] Example: MOV R1, #25H ; load data 25H into R1 2 8051 Assembly Language Registers
More informationSN8F5000 Family Instruction Set
SONiX Technology Co., Ltd. 8051-based Microcontroller 1 Overview SN8F5000 is 8051 Flash Type microcontroller supports comprehensive assembly instructions and which are fully compatible with standard 8051.
More informationCHAPTER 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 informationArchitecture & Instruction set of 8085 Microprocessor and 8051 Micro Controller
of 8085 microprocessor 8085 is pronounced as "eighty-eighty-five" microprocessor. It is an 8-bit microprocessor designed by Intel in 1977 using NMOS technology. It has the following configuration 8-bit
More informationCode segment Stack segment
Registers Most of the registers contain data/instruction offsets within 64 KB memory segment. There are four different 64 KB segments for instructions, stack, data and extra data. To specify where in 1
More informationInstruction-set Design Issues: what is the ML instruction format(s) ML instruction Opcode Dest. Operand Source Operand 1...
Instruction-set Design Issues: what is the format(s) Opcode Dest. Operand Source Operand 1... 1) Which instructions to include: How many? Complexity - simple ADD R1, R2, R3 complex e.g., VAX MATCHC substrlength,
More informationIntel 8086: Instruction Set
IUST-EE (Chapter 6) Intel 8086: Instruction Set 1 Outline Instruction Set Data Transfer Instructions Arithmetic Instructions Bit Manipulation Instructions String Instructions Unconditional Transfer Instruction
More informationDR bit RISC Microcontroller. Instructions set details ver 3.10
DR80390 8-bit RISC Microcontroller Instructions set details ver 3.10 DR80390 Instructions set details - 2 - Contents 1. Overview 7 1.1. Document structure. 7 2. Instructions set brief 7 2.1. Instruction
More informationInstruction-set Design Issues: what is the ML instruction format(s) ML instruction Opcode Dest. Operand Source Operand 1...
Instruction-set Design Issues: what is the format(s) Opcode Dest. Operand Source Operand 1... 1) Which instructions to include: How many? Complexity - simple ADD R1, R2, R3 complex e.g., VAX MATCHC substrlength,
More informationModule 8: Atmega32 Stack & Subroutine. Stack Pointer Subroutine Call function
Module 8: Atmega32 Stack & Subroutine Stack Pointer Subroutine Call function Stack Stack o Stack is a section of RAM used by the CPU to store information temporarily (i.e. data or address). o The CPU needs
More information8051 Microcontrollers
8051 Microcontrollers Richa Upadhyay Prabhu NMIMS s MPSTME richa.upadhyay@nmims.edu March 15, 2016 8051 INSTRUCTIONS JUMP, LOOP AND CALL INSTRUCTIONS 8051 INSTRUCTIONS Repeating a sequence of instructions
More informationTYPES OF INTERRUPTS: -
There are 3 types of interrupts. TYPES OF INTERRUPTS: - External Interrupts. Internal Interrupts. Software interrupts. Hardware Interrupts (1) External interrupts come from I/O devices, from a timing device
More informationMicrocontroller. Instruction set of 8051
UNIT 2: Addressing Modes and Operations: Introduction, Addressing modes, External data Moves, Code Memory, Read Only Data Moves / Indexed Addressing mode, PUSH and POP Opcodes, Data exchanges, Example
More informationRCX internals (Revised February 24)
CMSC 23000 Winter 2006 Operating Systems Handout 3 January 27 RCX internals (Revised February 24) 1 Introduction This document collects together various pieces of information about the hardware in the
More informationWilliam 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 informationSOEN228, Winter Revision 1.2 Date: October 25,
SOEN228, Winter 2003 Revision 1.2 Date: October 25, 2003 1 Contents Flags Mnemonics Basic I/O Exercises Overview of sample programs 2 Flag Register The flag register stores the condition flags that retain
More informationVARDHAMAN COLLEGE OF ENGINEERING (AUTONOMOUS) Shamshabad, Hyderabad
Introduction to MS-DOS Debugger DEBUG In this laboratory, we will use DEBUG program and learn how to: 1. Examine and modify the contents of the 8086 s internal registers, and dedicated parts of the memory
More informationComputer Organization & Assembly Language Programming. CSE 2312 Lecture 15 Addressing and Subroutine
Computer Organization & Assembly Language Programming CSE 2312 Lecture 15 Addressing and Subroutine 1 Sections in 8088 Code TEXT section, for the processor instructions. DATA section for the initialization
More informationH8/300H Series Software Manual
16 H8/3H Series Software Manual Renesas 16-Bit Single-Chip Microcomputer H8 Family/H8/3H Series Rev. 3. Revision Date: Dec 13, 24 Keep safety first in your circuit designs! 1. Renesas Technology Corp.
More informationIt is possible to define a number using a character or multiple numbers (see instruction DB) by using a string.
1 od 5 17. 12. 2017 23:53 (https://github.com/schweigi/assembler-simulator) Introduction This simulator provides a simplified assembler syntax (based on NASM (http://www.nasm.us)) and is simulating a x86
More informationCPU: SOFTWARE ARCHITECTURE INSTRUCTION SET (PART
General Introduction CPU: SOFTWARE ARCHITECTURE INSTRUCTION SET (PART 1) General Introduction (1/5): On Instructions Instruction operate with data or with the flow of the program The following information
More informationELEG3924 Microprocessor
Department of Electrical Engineering University of Arkansas ELEG3924 Microprocessor Ch.2 Assembly Language Programming Dr. Jing Yang jingyang@uark.edu 1 OUTLINE Inside 8051 Introduction to assembly programming
More information3.1 DATA MOVEMENT INSTRUCTIONS 45
3.1.1 General-Purpose Data Movement s 45 3.1.2 Stack Manipulation... 46 3.1.3 Type Conversion... 48 3.2.1 Addition and Subtraction... 51 3.1 DATA MOVEMENT INSTRUCTIONS 45 MOV (Move) transfers a byte, word,
More informationELEG3923 Microprocessor Ch.2 Assembly Language Programming
Department of Electrical Engineering University of Arkansas ELEG3923 Microprocessor Ch.2 Assembly Language Programming Dr. Jingxian Wu wuj@uark.edu OUTLINE 2 Inside 8051 Introduction to assembly programming
More informationProgramming. 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 informationCPE300: Digital System Architecture and Design
CPE300: Digital System Architecture and Design Fall 2011 MW 17:30-18:45 CBC C316 Arithmetic Unit 10032011 http://www.egr.unlv.edu/~b1morris/cpe300/ 2 Outline Recap Chapter 3 Number Systems Fixed Point
More informationPrinceton University COS 217: Introduction to Programming Systems A Subset of IA-32 Assembly Language
Princeton University COS 217: Introduction to Programming Systems A Subset of IA-32 Assembly Language Instruction Operands Immediate Operands Syntax: $i Semantics: Evaluates to i. Note that i could be
More informationinstruction 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 informationComputer System Architecture
CSC 203 1.5 Computer System Architecture Department of Statistics and Computer Science University of Sri Jayewardenepura Addressing 2 Addressing Subject of specifying where the operands (addresses) are
More informationInstruction set of 8085
Instruction set of 05 /23/2016 ptkarule@rediffmail.com 1 Instruction set of 05 Instruction set is divided into various groups depending on the operations performed: 1. Data transfer 2. rithmetic 3. Logical
More informationA block of memory (FlashROM) starts at address 0x and it is 256 KB long. What is the last address in the block?
A block of memory (FlashROM) starts at address 0x00000000 and it is 256 KB long. What is the last address in the block? 1 A block of memory (FlashROM) starts at address 0x00000000 and it is 256 KB long.
More informationEXPERIMENT NO.1. A Microcontroller is a complete computer system built on a single chip.
EXPERIMENT NO.1 AIM: Study of 8051 Microcontroller TOOLS: 8051 kit THEORY: Salient Features of 8051 A Microcontroller is a complete computer system built on a single chip. It contains all components like
More informationMemory organization Programming model - Program status word - register banks - Addressing modes - instruction set Programming examples.
MICROCONTROLLERS AND APPLICATIONS 1 Module 2 Module-2 Contents: Memory organization Programming model - Program status word - register banks - Addressing modes - instruction set Programming examples. MEMORY
More informationAddressing Modes on the x86
Addressing Modes on the x86 register addressing mode mov ax, ax, mov ax, bx mov ax, cx mov ax, dx constant addressing mode mov ax, 25 mov bx, 195 mov cx, 2056 mov dx, 1000 accessing data in memory There
More informationAssembly 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 informationChapter 7 Central Processor Unit (S08CPUV2)
Chapter 7 Central Processor Unit (S08CPUV2) 7.1 Introduction This section provides summary information about the registers, addressing modes, and instruction set of the CPU of the HCS08 Family. For a more
More informationUNIT-II. Part-2: CENTRAL PROCESSING UNIT
Page1 UNIT-II Part-2: CENTRAL PROCESSING UNIT Stack Organization Instruction Formats Addressing Modes Data Transfer And Manipulation Program Control Reduced Instruction Set Computer (RISC) Introduction:
More informationENE 334 Microprocessors
Page 1 ENE 334 Microprocessors Lecture 9: MCS-51: Moving Data : Dejwoot KHAWPARISUTH http://webstaff.kmutt.ac.th/~dejwoot.kha/ ENE 334 MCS-51 Moving Data Page 2 Moving Data: Objectives Use commands that
More informationDigital Blocks Semiconductor IP
805 SFR Bus Digital Blocks Semiconductor IP 805 Microcontroller Configurable Peripherals General Description The Digital Blocks (Configurable Peripherals) Microcontroller Verilog IP Core is complaint with
More informationS3C80E5/P80E5/C80E7/P80E7 (Preliminary Spec)
S3C80E5/P80E5/C80E7/P80E7 (Preliminary Spec) INSTRUCTION SET 6 INSTRUCTION SET OVERVIEW The instruction set is specifically designed to support large register files that are typical of most S3C8-series
More informationQ. Classify the instruction set of 8051 and list out the instructions in each type.
INTRODUCTION Here is a list of the operands and their meanings: A - accumulator; Rn - is one of working registers (R0-R7) in the currently active RAM memory bank; Direct - is any 8-bit address register
More informationLecture 9. INC and DEC. INC/DEC Examples ADD. Arithmetic Operations Overflow Multiply and Divide
Lecture 9 INC and DEC Arithmetic Operations Overflow Multiply and Divide INC adds one to a single operand DEC decrements one from a single operand INC destination DEC destination where destination can
More informationPrinceton University COS 217: Introduction to Programming Systems A Subset of x86-64 Assembly Language
Princeton University COS 217: Introduction to Programming Systems A Subset of x86-64 Assembly Language 1. Simplifying Assumptions Programs define functions that: do not use floating point values, have
More informationECE232: Hardware Organization and Design. Computer Organization - Previously covered
ECE232: Hardware Organization and Design Part 6: MIPS Instructions II http://www.ecs.umass.edu/ece/ece232/ Adapted from Computer Organization and Design, Patterson & Hennessy, UCB Computer Organization
More informationWhat Registers are available? Programming in Assembler. Assembler Programming - like early Basic. Assembler Data Movement Instructions
Programming in Assembler Need knowledge of CPU 8051 Programmers model what registers are available? what memory is available? code memory (for programs) data memory (for variables and the stack) what instructions
More informationEE 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 informationAssembly 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 informationComputer Organisation CS303
Computer Organisation CS303 Module Period Assignments 1 Day 1 to Day 6 1. Write a program to evaluate the arithmetic statement: X=(A-B + C * (D * E-F))/G + H*K a. Using a general register computer with
More informationExam 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 informationCPE 323 MSP430 INSTRUCTION SET ARCHITECTURE (ISA)
CPE 323 MSP430 INSTRUCTION SET ARCHITECTURE (ISA) Aleksandar Milenković Email: milenka@uah.edu Web: http://www.ece.uah.edu/~milenka Objective Introduce MSP430 Instruction Set Architecture (Class of ISA,
More informationMost of the HC12 s instructions access data in memory There are several ways for the HC12 to determine which address to access
HC12 Addressing Modes Instruction coding and execution o Inherent, Extended, Direct, Immediate, Indexed, and Relative Modes o Summary of MC9S12 Addressing Modes o Using X and Y registers as pointers o
More informationDigital Blocks Semiconductor IP
Digital Blocks Semiconductor IP 805 Microcontroller General Description The Digital Blocks Microcontroller Verilog IP Core is complaint with the MCS 5 Instruction Set and contains standard 805 MCU peripherals,
More informationS3.0 : A multicore 32-bit Processor
S3.0 : A multicore 32-bit Processor S3.0 is a multicore version of S2.1 simple processor. This is a typical simple 32-bit processor. It has three-address instructions and 32 registers. Most operations
More informationECE331 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 informationMIPS Instruction Set
MIPS Instruction Set Prof. James L. Frankel Harvard University Version of 7:12 PM 3-Apr-2018 Copyright 2018, 2017, 2016, 201 James L. Frankel. All rights reserved. CPU Overview CPU is an acronym for Central
More informationInstruction Sets: Characteristics and Functions Addressing Modes
Instruction Sets: Characteristics and Functions Addressing Modes Chapters 10 and 11, William Stallings Computer Organization and Architecture 7 th Edition What is an Instruction Set? The complete collection
More informationMOS 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 informationContents 8051 Instruction Set BY D. BALAKRISHNA, Research Assistant, IIIT-H Chapter I : Control Transfer Instructions Lesson (a): Loop Lesson (b): Jump (i) Conditional Lesson (c): Lesson (d): Lesson (e):
More informationSummer 2003 Lecture 4 06/14/03
Summer 2003 Lecture 4 06/14/03 LDS/LES/LSS General forms: lds reg,mem lseg reg,mem Load far pointer ~~ outside of current segment {E.g., load reg w/value @ mem, & seg w/mem+2 XCHG Exchange values General
More informationDodatak. Skup instrukcija
Dodatak Skup instrukcija Arithmetic Operations [@Ri] implies contents of memory location pointed to by R0 or R1 Rn refers to registers R0-R7 of the currently selected register bank 2 ADD A,
More informationTUTORIAL Assembly Language programming (2)
8051 Assembly Language programming (2) TUTORIAL 4 EEE3410 Microcontroller Applications 1. Write the instructions to move value 34h into register A and value 3Fh into register B, then add them together.
More informationMicrocomputer Architecture and Programming
IUST-EE (Chapter 1) Microcomputer Architecture and Programming 1 Outline Basic Blocks of Microcomputer Typical Microcomputer Architecture The Single-Chip Microprocessor Microprocessor vs. Microcontroller
More informationLecture 04: Machine Instructions
CSCI2510 Computer Organization Lecture 04: Machine Instructions Ming-Chang YANG mcyang@cse.cuhk.edu.hk Reading: Chap. 2.3~2.4, 2.10~2.11 Recall: Instructions & Program A computer is governed by instructions.
More informationInstruction Set Architecture
C Fortran Ada etc. Basic Java Instruction Set Architecture Compiler Assembly Language Compiler Byte Code Nizamettin AYDIN naydin@yildiz.edu.tr http://www.yildiz.edu.tr/~naydin http://akademik.bahcesehir.edu.tr/~naydin
More informationChapter 3. Z80 Instructions & Assembly Language. Von Neumann Architecture. Memory. instructions. program. data
Von Neumann Architecture The von Neumann architecture is a computer design model that uses a processing unit and a separate storage to hold both instructions and data To run a machine, program and data
More informationPHYS 319. Things to do before next week's lab Whirlwind tour of the MSP430 CPU and its assembly language Activity 1.
PHYS 319 Things to do before next week's lab Whirlwind tour of the MSP430 CPU and its assembly language Activity 1. Before next week's lab: Read manual for Lab 2 and your OS setup guide then prepare your
More informationCS401 Assembly Language Solved MCQS From Midterm Papers
CS401 Assembly Language Solved MCQS From Midterm Papers May 14,2011 MC100401285 Moaaz.pk@gmail.com MC100401285@gmail.com PSMD01(IEMS) Question No:1 ( Marks: 1 ) - Please choose one The first instruction
More informationM2 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 informationAVR ISA & AVR Programming (I) Lecturer: Sri Parameswaran Notes by: Annie Guo
AVR ISA & AVR Programming (I) Lecturer: Sri Parameswaran Notes by: Annie Guo 1 Lecture Overview AVR ISA AVR Instructions & Programming (I) Basic construct implementation 2 Atmel AVR 8-bit RISC architecture
More informationCentral Processing Unit
Central Processing Unit Networks and Embedded Software Module.. by Wolfgang Neff Components () lock diagram Execution Unit Control Unit Registers rithmetic logic unit DD, SU etc. NOT, ND etc. us Interface
More informationInterfacing Compiler and Hardware. Computer Systems Architecture. Processor Types And Instruction Sets. What Instructions Should A Processor Offer?
Interfacing Compiler and Hardware Computer Systems Architecture FORTRAN 90 program C++ program Processor Types And Sets FORTRAN 90 Compiler C++ Compiler set level Hardware 1 2 What s Should A Processor
More informationComputer Architecture. The Language of the Machine
Computer Architecture The Language of the Machine Instruction Sets Basic ISA Classes, Addressing, Format Administrative Matters Operations, Branching, Calling conventions Break Organization All computers
More informationEXPERIMENT NO. 1 THE MKT 8085 MICROPROCESSOR TRAINER
OBJECT: EXPERIMENT NO. 1 THE MKT 8085 MICROPROCESSOR TRAINER To understand the structure and operating instruction of the microprocessor trainer. INTRODUCTION: The MKT 8085 is a single-board microcomputer,
More informationCOSC 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 informationCS401 - 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 informationDigital System Design Using Verilog. - Processing Unit Design
Digital System Design Using Verilog - Processing Unit Design 1.1 CPU BASICS A typical CPU has three major components: (1) Register set, (2) Arithmetic logic unit (ALU), and (3) Control unit (CU) The register
More information8051 Microcontrollers
8051 Microcontrollers Richa Upadhyay Prabhu NMIMS s MPSTME richa.upadhyay@nmims.edu March 8, 2016 Controller vs Processor Controller vs Processor Introduction to 8051 Micro-controller In 1981,Intel corporation
More informationHitachi Microcomputer H8/300H Series Application Notes for CPU
Hitachi Microcomputer H8/3H Series Application Notes for CPU ADE-52-33 Notice When using this document, keep the following in mind: 1. This document may, wholly or partially, be subject to change without
More informationMIPS Assembly Programming
COMP 212 Computer Organization & Architecture COMP 212 Fall 2008 Lecture 8 Cache & Disk System Review MIPS Assembly Programming Comp 212 Computer Org & Arch 1 Z. Li, 2008 Comp 212 Computer Org & Arch 2
More informationCENG 450: Instruction Set (16-bit)
CENG 450: Instruction Set (16-bit) In this lab, you will design and implement a pipelined 16-bit processor on FPGA. The instructions set of the processor is as follows: Instructions Set We use a RISC-like
More informationComputer Organization CS 206 T Lec# 2: Instruction Sets
Computer Organization CS 206 T Lec# 2: Instruction Sets Topics What is an instruction set Elements of instruction Instruction Format Instruction types Types of operations Types of operand Addressing mode
More informationCHAPTER 8: Central Processing Unit (CPU)
CS 224: Computer Organization S.KHABET CHAPTER 8: Central Processing Unit (CPU) Outline Introduction General Register Organization Stack Organization Instruction Formats Addressing Modes 1 Major Components
More informationChapter 9. Programming Framework
Chapter 9 Programming Framework Lesson 1 Registers Registers Pointers Accumulator Status General Purpose Outline CPU Registers Examples 8-bitA (Accumulator) Register 8-bit B Register 8-bitPSW (Processor
More information231 Spring Final Exam Name:
231 Spring 2010 -- Final Exam Name: No calculators. Matching. Indicate the letter of the best description. (1 pt. each) 1. address 2. object code 3. condition code 4. byte 5. ASCII 6. local variable 7..global
More informationCSCE 5610: Computer Architecture
HW #1 1.3, 1.5, 1.9, 1.12 Due: Sept 12, 2018 Review: Execution time of a program Arithmetic Average, Weighted Arithmetic Average Geometric Mean Benchmarks, kernels and synthetic benchmarks Computing CPI
More information