Upload
lorena-goodwin
View
224
Download
0
Tags:
Embed Size (px)
Citation preview
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
Chapter 3Chapter 3Instruction Set ArchitecturesInstruction Set Architectures
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
Chapter OutlineChapter Outline
• Programming LanguagesProgramming Languages
• Assembly LanguagesAssembly Languages
• Instruction Set Architecture DesignInstruction Set Architecture Design
• A Relatively Simple ISAA Relatively Simple ISA
• ISA of the 8085 microprocessorISA of the 8085 microprocessor
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
Programming LanguagesProgramming Languages
• High level languagesHigh level languages
• Assembly languagesAssembly languages
• Machine languagesMachine languages
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
Compilation ProcessCompilation Process
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
Assembly ProcessAssembly Process
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
Java AppletsJava Applets
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
Assembly Language AttributesAssembly Language Attributes
• Instruction typesInstruction types
• Data typesData types
• Addressing modesAddressing modes
• Instruction formatsInstruction formats
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
Instruction TypesInstruction Types
• Data transferData transfer
• Data operationData operation
• Program controlProgram control
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
Data TypesData Types
• Numeric (integer, floating point)Numeric (integer, floating point)
• Boolean (true, false)Boolean (true, false)
• Character (ASCII, Unicode)Character (ASCII, Unicode)
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
Addressing modes - DirectAddressing modes - Direct
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
Addressing modes - IndirectAddressing modes - Indirect
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
Addressing modes - Register Addressing modes - Register DirectDirect
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
Addressing modes - Register Addressing modes - Register IndirectIndirect
@ R
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
Addressing modes - Addressing modes - ImmediateImmediate
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
Addressing modes - ImplicitAddressing modes - Implicit
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
Addressing modes - RelativeAddressing modes - Relative
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
Addressing modes - IndexedAddressing modes - Indexed
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
Instruction FormatsInstruction Formats
• More operands = less instructionsMore operands = less instructions
• More operands = larger wordsMore operands = larger words
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
3-operand Instructions3-operand Instructions
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
2-operand Instructions2-operand Instructions
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
1-operand Instructions1-operand Instructions
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
0-operand Instructions0-operand Instructions
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
Instruction Set ArchitectureInstruction Set Architecture
• Instruction setInstruction set
• Register setRegister set
• Memory access informationMemory access information
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
ISA AttributesISA Attributes
• CompletenessCompleteness
• OrthogonalityOrthogonality
• Register set designRegister set design
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
ISA RequirementsISA Requirements
• Backward compatibility?Backward compatibility?
• Data types/sizesData types/sizes
• Interrupts?Interrupts?
• Conditional instructions?Conditional instructions?
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
A Relatively Simple ISA - A Relatively Simple ISA - RegistersRegisters
• Accumulator Accumulator ACAC
• General purpose register General purpose register RR
• Flag Flag ZZ
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
A Relatively Simple ISA - A Relatively Simple ISA - Instruction SetInstruction Set
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
A Relatively Simple ISA - A Relatively Simple ISA - Instruction Set (continued)Instruction Set (continued)
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
A Relatively Simple ISA - A Relatively Simple ISA - Instruction FormatsInstruction Formats
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
Example Relatively Simple Example Relatively Simple ProgramProgram
1
1 2 ... , or
This could be written as a high-level language
code snippet as follows.
total=0;
FOR i=1 to n DO {total = total + i};
1. total = 0, i = 0
2. i =
n
i
n i
i + 1
3. total = total + i
4. IF i n THEN GOTO 2
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
Example Relatively Simple Example Relatively Simple Program CodeProgram Code
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
Example Relatively Simple Example Relatively Simple Program TraceProgram Trace
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
A Relatively Simple ISA - A Relatively Simple ISA - AnalysisAnalysis
• CompletenessCompleteness
• OrthogonalityOrthogonality
• Register set designRegister set design
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
The 8085 ISA - RegistersThe 8085 ISA - Registers
• Accumulator Accumulator AA
• General purpose registers General purpose registers BB, , CC, , DD, , EE, , HH, , LL
• Stack pointer Stack pointer SPSP
• Flags Flags SS, , ZZ, , PP, , CYCY, , ACAC
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
The 8085 ISA - Instruction SetThe 8085 ISA - Instruction Set• Data movement instructionsData movement instructions
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
The 8085 ISA - Instruction SetThe 8085 ISA - Instruction Set• Data operation instructionsData operation instructions
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
The 8085 ISA - Instruction SetThe 8085 ISA - Instruction Set• Program control instructionsProgram control instructions
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
The 8085 ISA - Instruction The 8085 ISA - Instruction FormatsFormats
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
Example 8085 ProgramExample 8085 Program
1
1 2 ... , or
1. i = n, sum = 0
2. sum = sum + i, i = i - 1
3. IF i 0 THEN GOTO 2
4. total = sum
n
i
n i
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
Example 8085 Program CodeExample 8085 Program Code
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
Example 8085 Program TraceExample 8085 Program Trace
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
The 8085 ISA - AnalysisThe 8085 ISA - Analysis
• CompletenessCompleteness
• OrthogonalityOrthogonality
• Register set designRegister set design
Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001 Images courtesy of Addison Wesley Longman, Inc. Copyright © 2001
SummarySummary
• Programming LanguagesProgramming Languages
• ISA DesignISA Design