SlideShare a Scribd company logo
2
Most read
3
Most read
4
Most read
10211CS109 – Microprocessor and Microcontroller
2023 -24 Winter Semester
ARM – Advanced RISC Machine
Unit IV – ARM Processor instruction sets
SCHOOL OF COMPUTING
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
B.Tech – Computer Science & Engineering
Dr. G. Dhanabalan
Associate Professor SoC / CSE
ARM Instruction set
• ARM processors operate in two states; ARM state and Thumb
state.
• ARM state allows the execution of 32-bit word aligned
instructions providing higher performance.
• Thumb state allows only 16-bit half-word aligned instruction
execution providing higher instruction code density.
• In Thumb state, all of the functionality provided by ARM
instructions was not possible and it requires multiple Thumb
instructions to complete certain single cycle operations of
ARM state.
• The processors that supported both 32-bit as well as 16-bit
instructions required to switch between ARM state and Thumb
state incurring an additional overhead of state switching.
• Third operating state, Jazelle state – byte-aligned Java byte
codes with variable word length.
ARM Instruction set
Assembly language programming basics
• For Cortex-M, each instruction contains four different fields.
• The left-most field called label is an optional field with unique
symbolic representation.
• If an instruction has a label in front of it, then it can be used to
determine the address of that instruction and correspondingly of
that memory location uniquely.
• Opcode field contains the instruction or the opcode, unique
symbolic representation of the instruction’s machine code.
• Operand field that might contain a different number of operands.
ARM Instruction set
Instruction grouping based on functionality
ARM Instruction set
ADD and MOV data processing instructions
• ADD and ADDS are called instruction mnemonics and represent the
opcode field.
• Registers R1 - R6 and immediate value #0x123 are the operands.
• # symbol is used to specify an immediate value or number.
• Integer value following the # symbol can be specified in different
formats, hexadecimal, decimal, or ASCII character format.
• ADD instruction performs addition of operands, result is stored in the
destination operand. Suffix S in ADDS instruction is responsible for
updating the condition code flags in the application program status
register in addition to performing addition.
ARM Instruction set
ADD and MOV data processing instructions
• MOV instruction is used for simple data transfers within the
processor.
• Another data movement operation may require to transfer the
contents of one register to another register.
• MOV instruction cannot be used for data transfers between
processor registers and memory.
• Maximum permissible immediate value for MOV instruction is
either 8-bit for 16-bit encoding or 12-bit for 32-bit encoding.
ARM Instruction set
LDR and STR Memory access instructions
• LDR and STR instructions allow data to be transferred between
processor and memory.
• Load register, LDR, instruction is used to transfer data from
memory to the processor register.
• Store register, STR, instruction is used to transfer data from
processor register to memory.
• On the other hand, LDR instruction allows any arbitrary 32-bit
immediate value that can be loaded to the specified register.

More Related Content

PPTX
Lecture 1.pptx
PDF
15CS44 MP & MC Module 4
DOCX
Arm processors' architecture
DOCX
PPTX
Ec8791 arm 9 processor
PPTX
Computer organization
PPTX
Arm Processors Architectures
PPTX
Arm corrected ppt
Lecture 1.pptx
15CS44 MP & MC Module 4
Arm processors' architecture
Ec8791 arm 9 processor
Computer organization
Arm Processors Architectures
Arm corrected ppt

Similar to unit IV ARM processor instruction set.ppt (20)

PPTX
ARM introduction registers architectures
PPTX
EC8791 ARM Processor and Peripherals.pptx
PDF
semester 6_arm processor basics Mod 3_part 1.pdf
PPTX
Unit 4 _ ARM Processors .pptx
PPTX
ARM Processor ppt.pptx
PPTX
Introduction to arm processor
PPT
ARM Architecture
PPTX
Mod 3.pptx
PPTX
MPU Chp2.pptx
PPT
ESD-unit 2-Hardware-Side-complete (1).ppt
PPTX
ARM Processors
PDF
Introduction to arm architecture
PPTX
Arm architecture chapter2_steve_furber
PDF
Unit II Arm7 Thumb Instruction
PDF
Unit ii arm7 thumb
PPTX
It very good ppt because it is good ppt method
PPTX
Arm processor
PPTX
Arm arc-2016
PPT
ARMicrocontroller Memory and Exceptions,Traps.ppt
PPSX
Lect 4 ARM PROCESSOR ARCHITECTURE
ARM introduction registers architectures
EC8791 ARM Processor and Peripherals.pptx
semester 6_arm processor basics Mod 3_part 1.pdf
Unit 4 _ ARM Processors .pptx
ARM Processor ppt.pptx
Introduction to arm processor
ARM Architecture
Mod 3.pptx
MPU Chp2.pptx
ESD-unit 2-Hardware-Side-complete (1).ppt
ARM Processors
Introduction to arm architecture
Arm architecture chapter2_steve_furber
Unit II Arm7 Thumb Instruction
Unit ii arm7 thumb
It very good ppt because it is good ppt method
Arm processor
Arm arc-2016
ARMicrocontroller Memory and Exceptions,Traps.ppt
Lect 4 ARM PROCESSOR ARCHITECTURE
Ad

Recently uploaded (20)

PPTX
web development for engineering and engineering
PPTX
additive manufacturing of ss316l using mig welding
PPTX
Sustainable Sites - Green Building Construction
DOCX
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
PDF
Unit I ESSENTIAL OF DIGITAL MARKETING.pdf
PDF
Automation-in-Manufacturing-Chapter-Introduction.pdf
PDF
Model Code of Practice - Construction Work - 21102022 .pdf
PDF
Evaluating the Democratization of the Turkish Armed Forces from a Normative P...
PPTX
CH1 Production IntroductoryConcepts.pptx
PPTX
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
PDF
PRIZ Academy - 9 Windows Thinking Where to Invest Today to Win Tomorrow.pdf
PDF
PPT on Performance Review to get promotions
PPTX
UNIT-1 - COAL BASED THERMAL POWER PLANTS
PPTX
UNIT 4 Total Quality Management .pptx
PDF
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
PDF
Embodied AI: Ushering in the Next Era of Intelligent Systems
PPTX
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
PPTX
M Tech Sem 1 Civil Engineering Environmental Sciences.pptx
PDF
R24 SURVEYING LAB MANUAL for civil enggi
PDF
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
web development for engineering and engineering
additive manufacturing of ss316l using mig welding
Sustainable Sites - Green Building Construction
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
Unit I ESSENTIAL OF DIGITAL MARKETING.pdf
Automation-in-Manufacturing-Chapter-Introduction.pdf
Model Code of Practice - Construction Work - 21102022 .pdf
Evaluating the Democratization of the Turkish Armed Forces from a Normative P...
CH1 Production IntroductoryConcepts.pptx
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
PRIZ Academy - 9 Windows Thinking Where to Invest Today to Win Tomorrow.pdf
PPT on Performance Review to get promotions
UNIT-1 - COAL BASED THERMAL POWER PLANTS
UNIT 4 Total Quality Management .pptx
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
Embodied AI: Ushering in the Next Era of Intelligent Systems
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
M Tech Sem 1 Civil Engineering Environmental Sciences.pptx
R24 SURVEYING LAB MANUAL for civil enggi
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
Ad

unit IV ARM processor instruction set.ppt

  • 1. 10211CS109 – Microprocessor and Microcontroller 2023 -24 Winter Semester ARM – Advanced RISC Machine Unit IV – ARM Processor instruction sets SCHOOL OF COMPUTING DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING B.Tech – Computer Science & Engineering Dr. G. Dhanabalan Associate Professor SoC / CSE
  • 2. ARM Instruction set • ARM processors operate in two states; ARM state and Thumb state. • ARM state allows the execution of 32-bit word aligned instructions providing higher performance. • Thumb state allows only 16-bit half-word aligned instruction execution providing higher instruction code density. • In Thumb state, all of the functionality provided by ARM instructions was not possible and it requires multiple Thumb instructions to complete certain single cycle operations of ARM state. • The processors that supported both 32-bit as well as 16-bit instructions required to switch between ARM state and Thumb state incurring an additional overhead of state switching. • Third operating state, Jazelle state – byte-aligned Java byte codes with variable word length.
  • 3. ARM Instruction set Assembly language programming basics • For Cortex-M, each instruction contains four different fields. • The left-most field called label is an optional field with unique symbolic representation. • If an instruction has a label in front of it, then it can be used to determine the address of that instruction and correspondingly of that memory location uniquely. • Opcode field contains the instruction or the opcode, unique symbolic representation of the instruction’s machine code. • Operand field that might contain a different number of operands.
  • 4. ARM Instruction set Instruction grouping based on functionality
  • 5. ARM Instruction set ADD and MOV data processing instructions • ADD and ADDS are called instruction mnemonics and represent the opcode field. • Registers R1 - R6 and immediate value #0x123 are the operands. • # symbol is used to specify an immediate value or number. • Integer value following the # symbol can be specified in different formats, hexadecimal, decimal, or ASCII character format. • ADD instruction performs addition of operands, result is stored in the destination operand. Suffix S in ADDS instruction is responsible for updating the condition code flags in the application program status register in addition to performing addition.
  • 6. ARM Instruction set ADD and MOV data processing instructions • MOV instruction is used for simple data transfers within the processor. • Another data movement operation may require to transfer the contents of one register to another register. • MOV instruction cannot be used for data transfers between processor registers and memory. • Maximum permissible immediate value for MOV instruction is either 8-bit for 16-bit encoding or 12-bit for 32-bit encoding.
  • 7. ARM Instruction set LDR and STR Memory access instructions • LDR and STR instructions allow data to be transferred between processor and memory. • Load register, LDR, instruction is used to transfer data from memory to the processor register. • Store register, STR, instruction is used to transfer data from processor register to memory. • On the other hand, LDR instruction allows any arbitrary 32-bit immediate value that can be loaded to the specified register.