SlideShare ist ein Scribd-Unternehmen logo
1 von 20
INTEL x86 AND ARM DATA TYPES
• Are instructions set architecture
• Change code into instructions a processor can
understand and execute.
• Determines which operating systems and apps to
run.
x86 Data Types
• The x86 can deal with data types of 8 (byte), 16 (word), 32
(doubleword), 64 (quadword), and 128 (double quadword) bits
in length.
• Are referred to as general data types.
• To allow maximum flexibility in data structures and efficient
memory utilization, words do not need be aligned at even
numbered addresses and doublewords do not need to aligned
at addresses evenly divisible by 4.
• X86 also supports specific data types that are recognized and
operated on by particular instructions.
I. General
• Byte (8), word (16 bits), doubleword (32 bits), quadword (64 bits), and
double quadword (128 bits) locations with arbitrary binary contents.
II. Integer
• A signed binary value contained in a byte, word, or doubleword, using two
complement representation.
III. Ordinal
• An unsigned integer contained in a byte, word, or doubleword.
IV. Unpacked Binary Coded Decimal (BCD)
• A representation of BCD digit in the range 0 through 9, with one digit in
each byte.
V. Packed BCD
• Packed byte representation of two BCD digits; value in the range 0 to 99.
VI. Near Pointer
• A 16-bit, 32-bit, or 64-bit effective address that represents the offset within
a segment. Used for all pointers in a nonsegmented memory and for
references within a segment in a segmented memory
VII. Far Pointer
• A logical address consisting of a 16-bit segment selector and an
offset of 16, 32, or 64 bits. Far pointers are used for memory
references in a segmented memory model where the identity of a
segment being accessed must be specified explicitly.
VIII. Bit Field
• A contiguous sequence of bits in which the position of each bit is
considered as an independent unit. A bit is string can begin at any bit
position of any byte and can contain up to 32 bits.
IX. Bit String
• A contiguous sequence of bits, containing from zero to 232- 1 bits.
XByte String
• A contiguous sequence of bytes, words, or doubleword, containing
from zero to 232- 1 bytes.
XI. Floating Point
• Refers to a set of types that are used by the floating point-point unit
and operated on by floating-point instruction.
XII. Packed SIMD (Single Instruction, Multiple Data)
• Packed 64-bit and 128-bit data types
a. Packed byte and packed byte integer
Bytes packed into a 64-bit quadword or 128-bit double quadword, interpreted
as a bit field or as an integer.
b. Packed word and packed word integer
• 16-bit words packed into a 64-bit quadword or 128-bit double quadword,
interpreted as a bit field or as an integer.
c. Packed doubleword and packed doubleword integer
• 32-bit doublewords packed into a 64-bit quadword or 128-bit double
quadword, interpreted as a bit field or as an integer.
d. Packed quadword and packed quadword integer
• Two 64-bit quadwords packed into 128-bit double quadword, interpreted as
a bit field or as an integer.
e. Packed single-precision floating-point and packed double-precision
floating-point
• Four 32-bit floating-point or two 64-bit floating-point values packed into a
128-bit double quadword.
ARM Data Types
• Support data types of 8 (byte), 16 (half word), and 32 (word) bits in length.
• Normally, halfword access should be halfword aligned and word accesses
should be word aligned.
• ARM processor does not provide floating point hardware, which saves
power and area.
• If required it must be implement in software.
• Can be configure to be little Endian or big Endian mode.
For nonaligned access attempts, the architecture supports three alternatives.
1. Default Case
2. Alignment checking
3. Unaligned access
• Endian Support
• A state bit (E-bit) in the system control register is set and cleared under
program control using the SETEND instruction.
• The E-bit defines which endian to load and store data
Types of Operations
• Data Transfer
• Arithmetic
• Logical
• Conversion
• Input/output
• System Control
• Transfer of Control
Data Transfer
Operation Name Description
 Move(Transfer)  Transfer word from source to destination
 Store  From processor to memory
 Load (Fetch)  From memory to processor
 Exchange  Swap contents of source and destination
 Clear ( Reset)  Transfer 0s to destination
 Set  Transfer 1s to destination
 Push  Word from source to top of stack
 Pop  From top of stack to destination
Arithmetic
Operation Name Description
 Add  Compute sum of two operands
 Subtract  Difference of two operands
 Multiply  Product of two operands
 Divide  Quotient of two operands
 Absolute  Replace by its absolute value
 Negate  Change sign
 Increment  Add 1 to operand
 Decrement  Subtract 1 to operand
Logical
Operation Name Description
 AND; OR; NOT; OR  Perform the specified logical operation bitwise
 Test  Test specified condition; set flags based on outcome
 Compare  Make logical and arithmetic comparison of two operands
 Set Control Variables
 Class of instructions to set controls for protection purposes, interrupt handling,
timer control.
 Shift  Left/right operand introducing constants at end.
 Variables  Left/right with wraparound end
Conversion
Operation Name Description
 Translate
 Translate values in a section of memory based on a table
of correspondences
 Convert
 Convert the contents of a word from one form to
another. E.g.(packed decimal to binary
I/O
Operation Name Description
 Input (Read)
 Transfer data from specified I/O port or device to
destination
 Output ( Write)  From specified source to I/O port or device
 Start I/O
 Transfer instructions to I/O processor to initiate I/O
operation
 End I/O
 Transfer status info from I/O system to specified
destination
System of Control
• Can be executed only while the processor is in a certain privileged state or
is executing a program in a special privileged area of memory.
• These instructions are reserved for the use of the operating system.
Examples:
• A system control instruction may read or alter a control register
• An instruction to read or modify a storage protection key
• Access to process control blocks in multiprogramming system
Transfer of Control
Operation Name Description
 Jump (Branch)  Unconditional Transfer: load PC with specified address
 Jump Conditional
 Test condition: either load PC with specified address or do
nothing
 Jump to Subroutine
 Place current program control info in known location; jump
to specified address
 Return
 Replace contents of PC and other register from known
location
 Execute  Fetch operand from location and execute as instructed
 Skip  Increment PC to skip next instruction
 Skip conditional  Either skip or do nothing based on condition
 Halt  Stop program execution
 Wait (Hold)  Test specified repeatedly and resume condition
 No Operation
 No operation is performed; but program execution is
continued.
Data Transfer
The most fundamental type of machine instruction is the data transfer
instruction. The data transfer instruction must specify several things. First, the
location of the source and destination operands must be specified. Each
location could be memory, a register, or the top of the stack. Second, the length
of the data to be transferred must be indicated. Third, as with all instruction
with operands, the mode of addressing for each operand must be specified.
Note: if one or both operands are in memory, then the processor must perform some or all of the
following actions:
1. Calculate the memory address, based on the address mode
2. If the address refers to virtual memory, translate from virtual to real memory address.
3. Determine whether the addressed item is in cache
4. If not, issue a command to the memory module
Arithmetic
Most machines provide the basic arithmetic operations of add, subtract, multiply, and
divide. These are invariably provide for signed integer (fixed-point) numbers. Often they are also
provided for floating-point and packed decimal numbers.
Other possible operations include a variety of single-operand instructions; for example,
• Absolute: Take the absolute value of the operand
• Negate: Negate the operand
• Increment: Add 1 to the operand
• Decrement: Subtract 1 from the operand
• The execution of an arithmetic instruction may involve data transfer operations to position
operands for input to the ALU, and to deliver the output of the ALU.
Logical
• Most machines also provide a variety of operations for manipulating individual bits of word
or other addressable units, often referred to as “bit twiddling”. They are based upon Boolean
operations.
• The NOT operation inverts a bit. AND, OR, and Exclusive-OR (XOR) are the most common
logical functions with two operands. EQUAL is useful binary test.
In, addition to bitwise logical operations, most machine provide a variety of
shifting and rotating functions. Most basic operations:
 Logical Shift
 Arithmetic Shift
 Rotate or Cyclic Shift
Conversion
Conversion instruction are those that change the format or operate on the
format of data.
An example is converting from decimal to binary.
Input / Output
There are a variety of approaches taken, including isolated programmed
I/O, memory-mapped programmed I/O, DMA, and the use of an I/O processor.
Many implementations provide only a few I/O instructions
System Control
System control instructions are those that can be executed only while
the processor is in a certain privileged area of memory. Typically, these
instructions are reserved for the use of the operating system.
Transfer of Control
For these instructions, the operation performed by the processor is up to date
the program counter to contain the address of some instruction in memory.
There are a number of reasons why transfer-of-control operations are required.
Among the most important are the following:
In the practical use of computers, it is essential to be able to execute each
instruction more than once and perhaps may thousands of times. It may require
thousands or perhaps millions of instructions to implement an application. This
would be unthinkable if each instruction had to be written out separately.
If a table or a list of items is to be processed, a program loop is needed. One
sequence of instructions is executed repeatedly to process all the data.
Virtually all programs involve some decision making. We would like the computer
to do one thing if one condition holds.
To compose correctly a large or even medium-size computer program is an
exceedingly difficult task. It helps if there are mechanisms for breaking the task up
into smaller pieces that can be worked on one procedure call.
The most common transfer-of-control operations found in instruction sets:
 Branch Instructions
 Also called a jump instruction, has one of its operands the address of the next
instruction to be executed.
 Conditional branch is made (update program counter to equal address
specified in operand) only if a certain condition is met.
 Unconditional branch is executed (increment program counter as usual)
 Skip Instructions
 Includes an implied address.
 Typically, the skip implies that one instruction be skipped; thus, the implied
address equals the address of the next instruction plus one instruction length.
 Because the skip instruction does not require a destination address field, it is
free to do other things.
 Procedure Call Instructions
 The most important innovation in the development of programming languages.
 Is a self-contained computer program that is incorporated into a larger program.
 At any point in the program the procedure may be invoked, or called.
 The processor is instructed to go and execute the entire procedure and then return to the point
from which the call took place.
 The two principal reasons for the use of procedures are economy and modularity.
 Economy allows the same piece of code to be used many times this is important in
programming effort and for making the most efficient use of storage space in the system (the
program must be stored)
 Procedure also allows large programming task to be subdivided into smaller units. This use of
modularity greatly eases the programming task.
The procedure mechanism involves two basic instructions:
• A call instruction that branches from the present location to the procedure, and
• A return instruction that returns from the procedure to the place from which it was called.
Three points are worth noting:
1.) A procedure can be called from more than one location.
2.) A procedure call appear in a procedure. This allows the nesting of procedures to an arbitrary
depth.
3.) Each procedure call is matched by a return in a called program.
There are three common places for storing the return address:
• Register
Start of called procedure
• Top of stack

Weitere ähnliche Inhalte

Was ist angesagt?

x86 architecture
x86 architecturex86 architecture
x86 architecturei i
 
Chapter 2-8085 Microprocessor Architecture and Microcomputer Systems
Chapter 2-8085 Microprocessor Architecture and Microcomputer SystemsChapter 2-8085 Microprocessor Architecture and Microcomputer Systems
Chapter 2-8085 Microprocessor Architecture and Microcomputer Systemscmkandemir
 
Memory banking-of-8086-final
Memory banking-of-8086-finalMemory banking-of-8086-final
Memory banking-of-8086-finalEstiak Khan
 
Computer organisation -morris mano
Computer organisation  -morris manoComputer organisation  -morris mano
Computer organisation -morris manovishnu murthy
 
Memory organization
Memory organizationMemory organization
Memory organizationishapadhy
 
Computer architecture addressing modes and formats
Computer architecture addressing modes and formatsComputer architecture addressing modes and formats
Computer architecture addressing modes and formatsMazin Alwaaly
 
Types of instructions
Types of instructionsTypes of instructions
Types of instructionsihsanjamil
 
Topic 1 Data Representation
Topic 1 Data RepresentationTopic 1 Data Representation
Topic 1 Data Representationekul
 
introduction to microprocessor and microcomputer
introduction to microprocessor and microcomputerintroduction to microprocessor and microcomputer
introduction to microprocessor and microcomputerSatya P. Joshi
 
Introduction to arm processor
Introduction to arm processorIntroduction to arm processor
Introduction to arm processorRAMPRAKASHT1
 
Memory management
Memory managementMemory management
Memory managementcpjcollege
 
ARM architcture
ARM architcture ARM architcture
ARM architcture Hossam Adel
 
8086 microprocessor-architecture
8086 microprocessor-architecture8086 microprocessor-architecture
8086 microprocessor-architectureprasadpawaskar
 
Risc and cisc eugene clewlow
Risc and cisc   eugene clewlowRisc and cisc   eugene clewlow
Risc and cisc eugene clewlowChaudhary Manzoor
 
RISC - Reduced Instruction Set Computing
RISC - Reduced Instruction Set ComputingRISC - Reduced Instruction Set Computing
RISC - Reduced Instruction Set ComputingTushar Swami
 
Programed I/O Modul..
Programed I/O Modul..Programed I/O Modul..
Programed I/O Modul..Myster Rius
 
Multiplication algorithm
Multiplication algorithmMultiplication algorithm
Multiplication algorithmGaurav Subham
 

Was ist angesagt? (20)

x86 architecture
x86 architecturex86 architecture
x86 architecture
 
Chapter 2-8085 Microprocessor Architecture and Microcomputer Systems
Chapter 2-8085 Microprocessor Architecture and Microcomputer SystemsChapter 2-8085 Microprocessor Architecture and Microcomputer Systems
Chapter 2-8085 Microprocessor Architecture and Microcomputer Systems
 
Memory banking-of-8086-final
Memory banking-of-8086-finalMemory banking-of-8086-final
Memory banking-of-8086-final
 
Computer organisation -morris mano
Computer organisation  -morris manoComputer organisation  -morris mano
Computer organisation -morris mano
 
Memory organization
Memory organizationMemory organization
Memory organization
 
Computer architecture addressing modes and formats
Computer architecture addressing modes and formatsComputer architecture addressing modes and formats
Computer architecture addressing modes and formats
 
Types of instructions
Types of instructionsTypes of instructions
Types of instructions
 
Memory Organization
Memory OrganizationMemory Organization
Memory Organization
 
Topic 1 Data Representation
Topic 1 Data RepresentationTopic 1 Data Representation
Topic 1 Data Representation
 
introduction to microprocessor and microcomputer
introduction to microprocessor and microcomputerintroduction to microprocessor and microcomputer
introduction to microprocessor and microcomputer
 
Introduction to arm processor
Introduction to arm processorIntroduction to arm processor
Introduction to arm processor
 
ADDRESSING MODES
ADDRESSING MODESADDRESSING MODES
ADDRESSING MODES
 
Memory management
Memory managementMemory management
Memory management
 
ARM architcture
ARM architcture ARM architcture
ARM architcture
 
8086 microprocessor-architecture
8086 microprocessor-architecture8086 microprocessor-architecture
8086 microprocessor-architecture
 
Risc and cisc eugene clewlow
Risc and cisc   eugene clewlowRisc and cisc   eugene clewlow
Risc and cisc eugene clewlow
 
RISC - Reduced Instruction Set Computing
RISC - Reduced Instruction Set ComputingRISC - Reduced Instruction Set Computing
RISC - Reduced Instruction Set Computing
 
Programed I/O Modul..
Programed I/O Modul..Programed I/O Modul..
Programed I/O Modul..
 
Multiplication algorithm
Multiplication algorithmMultiplication algorithm
Multiplication algorithm
 
80386
8038680386
80386
 

Ähnlich wie Intel x86 and ARM Data types

Ch12- instruction sets- char & funct.pdf
Ch12- instruction sets- char & funct.pdfCh12- instruction sets- char & funct.pdf
Ch12- instruction sets- char & funct.pdfsaimawarsi
 
(246431835) instruction set principles (2) (1)
(246431835) instruction set principles (2) (1)(246431835) instruction set principles (2) (1)
(246431835) instruction set principles (2) (1)Alveena Saleem
 
Microprocessor (1)
Microprocessor (1)Microprocessor (1)
Microprocessor (1)Muhd Azlan
 
Blackfin Processor Core Architecture Part 2
Blackfin Processor Core Architecture Part 2Blackfin Processor Core Architecture Part 2
Blackfin Processor Core Architecture Part 2Premier Farnell
 
Computer architecture instruction formats
Computer architecture instruction formatsComputer architecture instruction formats
Computer architecture instruction formatsMazin Alwaaly
 
micro chapter 3jjgffffyeyhhuyerfftfgggffgjj
micro chapter 3jjgffffyeyhhuyerfftfgggffgjjmicro chapter 3jjgffffyeyhhuyerfftfgggffgjj
micro chapter 3jjgffffyeyhhuyerfftfgggffgjjTadeseBeyene
 
Microprocessor and Microcontroller.pptx
Microprocessor and Microcontroller.pptxMicroprocessor and Microcontroller.pptx
Microprocessor and Microcontroller.pptxpvg123456
 
Data transfer and manipulation
Data transfer and manipulationData transfer and manipulation
Data transfer and manipulationrajshreemuthiah
 
instruction sets (1).pptx
instruction sets (1).pptxinstruction sets (1).pptx
instruction sets (1).pptxAmanMomin9
 
Introduction to Computer Architecture
Introduction to Computer ArchitectureIntroduction to Computer Architecture
Introduction to Computer ArchitectureKSundarAPIICSE
 
Introduction to Computer Architecture and Organization
Introduction to Computer Architecture and OrganizationIntroduction to Computer Architecture and Organization
Introduction to Computer Architecture and OrganizationDr. Balaji Ganesh Rajagopal
 
Microprocessor Miscellaneous datatrans+directives
Microprocessor Miscellaneous datatrans+directivesMicroprocessor Miscellaneous datatrans+directives
Microprocessor Miscellaneous datatrans+directiveswaqasahmad1995
 

Ähnlich wie Intel x86 and ARM Data types (20)

Chapter 7
Chapter 7Chapter 7
Chapter 7
 
Ch12- instruction sets- char & funct.pdf
Ch12- instruction sets- char & funct.pdfCh12- instruction sets- char & funct.pdf
Ch12- instruction sets- char & funct.pdf
 
(246431835) instruction set principles (2) (1)
(246431835) instruction set principles (2) (1)(246431835) instruction set principles (2) (1)
(246431835) instruction set principles (2) (1)
 
Microprocessor (1)
Microprocessor (1)Microprocessor (1)
Microprocessor (1)
 
Various type of register
Various type of registerVarious type of register
Various type of register
 
Blackfin Processor Core Architecture Part 2
Blackfin Processor Core Architecture Part 2Blackfin Processor Core Architecture Part 2
Blackfin Processor Core Architecture Part 2
 
Computer architecture instruction formats
Computer architecture instruction formatsComputer architecture instruction formats
Computer architecture instruction formats
 
Instruction codes
Instruction codesInstruction codes
Instruction codes
 
micro chapter 3jjgffffyeyhhuyerfftfgggffgjj
micro chapter 3jjgffffyeyhhuyerfftfgggffgjjmicro chapter 3jjgffffyeyhhuyerfftfgggffgjj
micro chapter 3jjgffffyeyhhuyerfftfgggffgjj
 
Data_Transfer&Manupulation Instructions.pptx
Data_Transfer&Manupulation Instructions.pptxData_Transfer&Manupulation Instructions.pptx
Data_Transfer&Manupulation Instructions.pptx
 
Microprocessor and Microcontroller.pptx
Microprocessor and Microcontroller.pptxMicroprocessor and Microcontroller.pptx
Microprocessor and Microcontroller.pptx
 
microprocessor
 microprocessor microprocessor
microprocessor
 
Data transfer and manipulation
Data transfer and manipulationData transfer and manipulation
Data transfer and manipulation
 
CO_Chapter2.ppt
CO_Chapter2.pptCO_Chapter2.ppt
CO_Chapter2.ppt
 
instruction sets (1).pptx
instruction sets (1).pptxinstruction sets (1).pptx
instruction sets (1).pptx
 
Introduction to Computer Architecture
Introduction to Computer ArchitectureIntroduction to Computer Architecture
Introduction to Computer Architecture
 
SUDHARSAN.V.pptx
SUDHARSAN.V.pptxSUDHARSAN.V.pptx
SUDHARSAN.V.pptx
 
Lecture 10
Lecture 10Lecture 10
Lecture 10
 
Introduction to Computer Architecture and Organization
Introduction to Computer Architecture and OrganizationIntroduction to Computer Architecture and Organization
Introduction to Computer Architecture and Organization
 
Microprocessor Miscellaneous datatrans+directives
Microprocessor Miscellaneous datatrans+directivesMicroprocessor Miscellaneous datatrans+directives
Microprocessor Miscellaneous datatrans+directives
 

Kürzlich hochgeladen

tonesoftg
tonesoftgtonesoftg
tonesoftglanshi9
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...masabamasaba
 
WSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburgmasabamasaba
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park masabamasaba
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benonimasabamasaba
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...chiefasafspells
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...masabamasaba
 
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...masabamasaba
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...Jittipong Loespradit
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplatePresentation.STUDIO
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrainmasabamasaba
 

Kürzlich hochgeladen (20)

tonesoftg
tonesoftgtonesoftg
tonesoftg
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
 
WSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - Keynote
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
 
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 

Intel x86 and ARM Data types

  • 1. INTEL x86 AND ARM DATA TYPES • Are instructions set architecture • Change code into instructions a processor can understand and execute. • Determines which operating systems and apps to run.
  • 2. x86 Data Types • The x86 can deal with data types of 8 (byte), 16 (word), 32 (doubleword), 64 (quadword), and 128 (double quadword) bits in length. • Are referred to as general data types. • To allow maximum flexibility in data structures and efficient memory utilization, words do not need be aligned at even numbered addresses and doublewords do not need to aligned at addresses evenly divisible by 4. • X86 also supports specific data types that are recognized and operated on by particular instructions.
  • 3. I. General • Byte (8), word (16 bits), doubleword (32 bits), quadword (64 bits), and double quadword (128 bits) locations with arbitrary binary contents. II. Integer • A signed binary value contained in a byte, word, or doubleword, using two complement representation. III. Ordinal • An unsigned integer contained in a byte, word, or doubleword. IV. Unpacked Binary Coded Decimal (BCD) • A representation of BCD digit in the range 0 through 9, with one digit in each byte. V. Packed BCD • Packed byte representation of two BCD digits; value in the range 0 to 99. VI. Near Pointer • A 16-bit, 32-bit, or 64-bit effective address that represents the offset within a segment. Used for all pointers in a nonsegmented memory and for references within a segment in a segmented memory
  • 4. VII. Far Pointer • A logical address consisting of a 16-bit segment selector and an offset of 16, 32, or 64 bits. Far pointers are used for memory references in a segmented memory model where the identity of a segment being accessed must be specified explicitly. VIII. Bit Field • A contiguous sequence of bits in which the position of each bit is considered as an independent unit. A bit is string can begin at any bit position of any byte and can contain up to 32 bits. IX. Bit String • A contiguous sequence of bits, containing from zero to 232- 1 bits. XByte String • A contiguous sequence of bytes, words, or doubleword, containing from zero to 232- 1 bytes. XI. Floating Point • Refers to a set of types that are used by the floating point-point unit and operated on by floating-point instruction.
  • 5.
  • 6. XII. Packed SIMD (Single Instruction, Multiple Data) • Packed 64-bit and 128-bit data types a. Packed byte and packed byte integer Bytes packed into a 64-bit quadword or 128-bit double quadword, interpreted as a bit field or as an integer. b. Packed word and packed word integer • 16-bit words packed into a 64-bit quadword or 128-bit double quadword, interpreted as a bit field or as an integer. c. Packed doubleword and packed doubleword integer • 32-bit doublewords packed into a 64-bit quadword or 128-bit double quadword, interpreted as a bit field or as an integer. d. Packed quadword and packed quadword integer • Two 64-bit quadwords packed into 128-bit double quadword, interpreted as a bit field or as an integer. e. Packed single-precision floating-point and packed double-precision floating-point • Four 32-bit floating-point or two 64-bit floating-point values packed into a 128-bit double quadword.
  • 7. ARM Data Types • Support data types of 8 (byte), 16 (half word), and 32 (word) bits in length. • Normally, halfword access should be halfword aligned and word accesses should be word aligned. • ARM processor does not provide floating point hardware, which saves power and area. • If required it must be implement in software. • Can be configure to be little Endian or big Endian mode. For nonaligned access attempts, the architecture supports three alternatives. 1. Default Case 2. Alignment checking 3. Unaligned access • Endian Support • A state bit (E-bit) in the system control register is set and cleared under program control using the SETEND instruction. • The E-bit defines which endian to load and store data
  • 8.
  • 9. Types of Operations • Data Transfer • Arithmetic • Logical • Conversion • Input/output • System Control • Transfer of Control
  • 10. Data Transfer Operation Name Description  Move(Transfer)  Transfer word from source to destination  Store  From processor to memory  Load (Fetch)  From memory to processor  Exchange  Swap contents of source and destination  Clear ( Reset)  Transfer 0s to destination  Set  Transfer 1s to destination  Push  Word from source to top of stack  Pop  From top of stack to destination Arithmetic Operation Name Description  Add  Compute sum of two operands  Subtract  Difference of two operands  Multiply  Product of two operands  Divide  Quotient of two operands  Absolute  Replace by its absolute value  Negate  Change sign  Increment  Add 1 to operand  Decrement  Subtract 1 to operand
  • 11. Logical Operation Name Description  AND; OR; NOT; OR  Perform the specified logical operation bitwise  Test  Test specified condition; set flags based on outcome  Compare  Make logical and arithmetic comparison of two operands  Set Control Variables  Class of instructions to set controls for protection purposes, interrupt handling, timer control.  Shift  Left/right operand introducing constants at end.  Variables  Left/right with wraparound end Conversion Operation Name Description  Translate  Translate values in a section of memory based on a table of correspondences  Convert  Convert the contents of a word from one form to another. E.g.(packed decimal to binary
  • 12. I/O Operation Name Description  Input (Read)  Transfer data from specified I/O port or device to destination  Output ( Write)  From specified source to I/O port or device  Start I/O  Transfer instructions to I/O processor to initiate I/O operation  End I/O  Transfer status info from I/O system to specified destination
  • 13. System of Control • Can be executed only while the processor is in a certain privileged state or is executing a program in a special privileged area of memory. • These instructions are reserved for the use of the operating system. Examples: • A system control instruction may read or alter a control register • An instruction to read or modify a storage protection key • Access to process control blocks in multiprogramming system Transfer of Control Operation Name Description  Jump (Branch)  Unconditional Transfer: load PC with specified address  Jump Conditional  Test condition: either load PC with specified address or do nothing  Jump to Subroutine  Place current program control info in known location; jump to specified address  Return  Replace contents of PC and other register from known location  Execute  Fetch operand from location and execute as instructed  Skip  Increment PC to skip next instruction  Skip conditional  Either skip or do nothing based on condition  Halt  Stop program execution  Wait (Hold)  Test specified repeatedly and resume condition  No Operation  No operation is performed; but program execution is continued.
  • 14.
  • 15. Data Transfer The most fundamental type of machine instruction is the data transfer instruction. The data transfer instruction must specify several things. First, the location of the source and destination operands must be specified. Each location could be memory, a register, or the top of the stack. Second, the length of the data to be transferred must be indicated. Third, as with all instruction with operands, the mode of addressing for each operand must be specified.
  • 16. Note: if one or both operands are in memory, then the processor must perform some or all of the following actions: 1. Calculate the memory address, based on the address mode 2. If the address refers to virtual memory, translate from virtual to real memory address. 3. Determine whether the addressed item is in cache 4. If not, issue a command to the memory module Arithmetic Most machines provide the basic arithmetic operations of add, subtract, multiply, and divide. These are invariably provide for signed integer (fixed-point) numbers. Often they are also provided for floating-point and packed decimal numbers. Other possible operations include a variety of single-operand instructions; for example, • Absolute: Take the absolute value of the operand • Negate: Negate the operand • Increment: Add 1 to the operand • Decrement: Subtract 1 from the operand • The execution of an arithmetic instruction may involve data transfer operations to position operands for input to the ALU, and to deliver the output of the ALU. Logical • Most machines also provide a variety of operations for manipulating individual bits of word or other addressable units, often referred to as “bit twiddling”. They are based upon Boolean operations. • The NOT operation inverts a bit. AND, OR, and Exclusive-OR (XOR) are the most common logical functions with two operands. EQUAL is useful binary test.
  • 17. In, addition to bitwise logical operations, most machine provide a variety of shifting and rotating functions. Most basic operations:  Logical Shift  Arithmetic Shift  Rotate or Cyclic Shift Conversion Conversion instruction are those that change the format or operate on the format of data. An example is converting from decimal to binary. Input / Output There are a variety of approaches taken, including isolated programmed I/O, memory-mapped programmed I/O, DMA, and the use of an I/O processor. Many implementations provide only a few I/O instructions
  • 18. System Control System control instructions are those that can be executed only while the processor is in a certain privileged area of memory. Typically, these instructions are reserved for the use of the operating system. Transfer of Control For these instructions, the operation performed by the processor is up to date the program counter to contain the address of some instruction in memory. There are a number of reasons why transfer-of-control operations are required. Among the most important are the following: In the practical use of computers, it is essential to be able to execute each instruction more than once and perhaps may thousands of times. It may require thousands or perhaps millions of instructions to implement an application. This would be unthinkable if each instruction had to be written out separately.
  • 19. If a table or a list of items is to be processed, a program loop is needed. One sequence of instructions is executed repeatedly to process all the data. Virtually all programs involve some decision making. We would like the computer to do one thing if one condition holds. To compose correctly a large or even medium-size computer program is an exceedingly difficult task. It helps if there are mechanisms for breaking the task up into smaller pieces that can be worked on one procedure call. The most common transfer-of-control operations found in instruction sets:  Branch Instructions  Also called a jump instruction, has one of its operands the address of the next instruction to be executed.  Conditional branch is made (update program counter to equal address specified in operand) only if a certain condition is met.  Unconditional branch is executed (increment program counter as usual)  Skip Instructions  Includes an implied address.  Typically, the skip implies that one instruction be skipped; thus, the implied address equals the address of the next instruction plus one instruction length.  Because the skip instruction does not require a destination address field, it is free to do other things.
  • 20.  Procedure Call Instructions  The most important innovation in the development of programming languages.  Is a self-contained computer program that is incorporated into a larger program.  At any point in the program the procedure may be invoked, or called.  The processor is instructed to go and execute the entire procedure and then return to the point from which the call took place.  The two principal reasons for the use of procedures are economy and modularity.  Economy allows the same piece of code to be used many times this is important in programming effort and for making the most efficient use of storage space in the system (the program must be stored)  Procedure also allows large programming task to be subdivided into smaller units. This use of modularity greatly eases the programming task. The procedure mechanism involves two basic instructions: • A call instruction that branches from the present location to the procedure, and • A return instruction that returns from the procedure to the place from which it was called. Three points are worth noting: 1.) A procedure can be called from more than one location. 2.) A procedure call appear in a procedure. This allows the nesting of procedures to an arbitrary depth. 3.) Each procedure call is matched by a return in a called program. There are three common places for storing the return address: • Register Start of called procedure • Top of stack