SlideShare una empresa de Scribd logo
1 de 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

Más contenido relacionado

La actualidad más candente

8086-microprocessor
8086-microprocessor8086-microprocessor
8086-microprocessorjhcid
 
8086-instruction-set-ppt
 8086-instruction-set-ppt 8086-instruction-set-ppt
8086-instruction-set-pptjemimajerome
 
Instruction set of 8086
Instruction set of 8086Instruction set of 8086
Instruction set of 8086Akhila Rahul
 
Input Output Organization
Input Output OrganizationInput Output Organization
Input Output OrganizationKamal Acharya
 
Flag register 8086 assignment
Flag register 8086 assignmentFlag register 8086 assignment
Flag register 8086 assignmentZia3130
 
Stack and its usage in assembly language
Stack and its usage in assembly language Stack and its usage in assembly language
Stack and its usage in assembly language Usman Bin Saad
 
Microarchitecture
MicroarchitectureMicroarchitecture
Microarchitecturemeashi
 
Designing of fifo and serial peripheral interface protocol using Verilog HDL
Designing of fifo and serial peripheral interface protocol using Verilog HDLDesigning of fifo and serial peripheral interface protocol using Verilog HDL
Designing of fifo and serial peripheral interface protocol using Verilog HDLJay Baxi
 
Instruction Set Architecture
Instruction Set ArchitectureInstruction Set Architecture
Instruction Set ArchitectureDilum Bandara
 
An Overview Study on I/O Expander with I2C and SMBus Interface
An Overview Study on I/O Expander with I2C and SMBus InterfaceAn Overview Study on I/O Expander with I2C and SMBus Interface
An Overview Study on I/O Expander with I2C and SMBus InterfacePremier Farnell
 
Direct Memory Access
Direct Memory AccessDirect Memory Access
Direct Memory AccessTuqa Rmahi
 
Serial communication in LPC2148
Serial communication in LPC2148Serial communication in LPC2148
Serial communication in LPC2148sravannunna24
 
Micro Programmed Control Unit
Micro Programmed Control UnitMicro Programmed Control Unit
Micro Programmed Control UnitKamal Acharya
 
Minimum Modes and Maximum Modes of 8086 Microprocessor
Minimum Modes and Maximum Modes of 8086 MicroprocessorMinimum Modes and Maximum Modes of 8086 Microprocessor
Minimum Modes and Maximum Modes of 8086 MicroprocessorNikhil Kumar
 
8086 MICROPROCESSOR
8086 MICROPROCESSOR8086 MICROPROCESSOR
8086 MICROPROCESSORAkhila Rahul
 
General register organization (computer organization)
General register organization  (computer organization)General register organization  (computer organization)
General register organization (computer organization)rishi ram khanal
 

La actualidad más candente (20)

8086-microprocessor
8086-microprocessor8086-microprocessor
8086-microprocessor
 
8086-instruction-set-ppt
 8086-instruction-set-ppt 8086-instruction-set-ppt
8086-instruction-set-ppt
 
Instruction set of 8086
Instruction set of 8086Instruction set of 8086
Instruction set of 8086
 
Input Output Organization
Input Output OrganizationInput Output Organization
Input Output Organization
 
Flag register 8086 assignment
Flag register 8086 assignmentFlag register 8086 assignment
Flag register 8086 assignment
 
Chapter 1
Chapter 1Chapter 1
Chapter 1
 
CISC & RISC Architecture
CISC & RISC Architecture CISC & RISC Architecture
CISC & RISC Architecture
 
Stack and its usage in assembly language
Stack and its usage in assembly language Stack and its usage in assembly language
Stack and its usage in assembly language
 
Microarchitecture
MicroarchitectureMicroarchitecture
Microarchitecture
 
Designing of fifo and serial peripheral interface protocol using Verilog HDL
Designing of fifo and serial peripheral interface protocol using Verilog HDLDesigning of fifo and serial peripheral interface protocol using Verilog HDL
Designing of fifo and serial peripheral interface protocol using Verilog HDL
 
Instruction Set Architecture
Instruction Set ArchitectureInstruction Set Architecture
Instruction Set Architecture
 
An Overview Study on I/O Expander with I2C and SMBus Interface
An Overview Study on I/O Expander with I2C and SMBus InterfaceAn Overview Study on I/O Expander with I2C and SMBus Interface
An Overview Study on I/O Expander with I2C and SMBus Interface
 
Axi
AxiAxi
Axi
 
Assembly 8086
Assembly 8086Assembly 8086
Assembly 8086
 
Direct Memory Access
Direct Memory AccessDirect Memory Access
Direct Memory Access
 
Serial communication in LPC2148
Serial communication in LPC2148Serial communication in LPC2148
Serial communication in LPC2148
 
Micro Programmed Control Unit
Micro Programmed Control UnitMicro Programmed Control Unit
Micro Programmed Control Unit
 
Minimum Modes and Maximum Modes of 8086 Microprocessor
Minimum Modes and Maximum Modes of 8086 MicroprocessorMinimum Modes and Maximum Modes of 8086 Microprocessor
Minimum Modes and Maximum Modes of 8086 Microprocessor
 
8086 MICROPROCESSOR
8086 MICROPROCESSOR8086 MICROPROCESSOR
8086 MICROPROCESSOR
 
General register organization (computer organization)
General register organization  (computer organization)General register organization  (computer organization)
General register organization (computer organization)
 

Similar a 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
 

Similar a 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
 

Último

Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
+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
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceanilsa9823
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 

Último (20)

Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
+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...
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 

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