File:Endianessmap.svg

From Wikimedia Commons, the free media repository
Jump to navigation Jump to search
Original file(SVG file, nominally 744 × 1,052 pixels, file size: 13 KB)

Summary[edit]

Description
English: A tool to use data in little and big endian encodings.
Date (original upload date)
Source Traced from en:Image:Endianessmap.jpg with inkscape, cleaned up with vim.
Author Konrad Eisele
Permission
(Reusing this file)

See below.

Explanation[edit]

Here is an example of using the image:

Big endian[edit]

In Big-Endian: Say you would want to:

  • write "0x12345678" 32 bit into memory at addr "0"
  • read back 16 bit from address "2"

You would take the parts of the diagram for 32 bit and Big-Endian:

 Value in register:
 81234561
  A B C D  
 Register:
 |------->
  A B C D  32 bit access

 Memory:
 | A B C D  32 bit access address 0
 ---------
   0 1 2 3
   ^
   |-> map 0 here
   A B C D  
 Result in memory: 
 | 12345678  
 ---------
   0 1 2 3
   

Now you would want to read back 16 bit from address "2" in Big-Endian: Then you would use:

 Value in memory: 
 | 12345678  
 ---------
   0 1 2 3
 Memory:
 | A B C D  16 bit access 2
 ---------
   0 1 2 3
       ^
       |-> map 2 here
       |--->
       C D  

 Register:
    |-->|
 A B C D  16 bit access 
 Result in register: 
 | 00005678  
 ---------
   0 1 2 3

Little endian[edit]

In Little-Endian: Say you would want to :

  • write your "0x12345678" 32 bit into memory at addr "0"
  • read back 16 bit from address "2"

You would take the parts of the diagram for 32 bit and Little-Endian:

 Value in register:
 12345678
  A B C D  
 Register:
  A B C D  32 bit access
 <-------

 Memory:
  A B C D |  32 bit access 0
 ---------
  3 2 1 0
        ^
      <-| map 0 here
  A B C D  
 Result in memory: 
  12345678|  
 ---------
   3 2 1 0
   

Now you would want to read back 16 bit from address "2" in Little-Endian: Then you would use:

 Value in memory: 
  12345678 |
 -----------
   3 2 1 0
 Memory:
  A B C D |  32 bit access address 2
 ---------
  3 2 1 0
    ^
  <-| map 2 here
  C D  

 Register:
 A B C D  16 bit access
    |<--|
 Result in register: 
  00001234  
 ---------
   3 2 1 0

Licensing[edit]

Konrad Eisele, the copyright holder of this work, hereby publishes it under the following licenses:
GNU head Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled GNU Free Documentation License.
w:en:Creative Commons
attribution share alike
This file is licensed under the Creative Commons Attribution-Share Alike 3.0 Unported license.
Attribution: Konrad Eisele
You are free:
  • to share – to copy, distribute and transmit the work
  • to remix – to adapt the work
Under the following conditions:
  • attribution – You must attribute the work in the manner specified by the author or licensor (but not in any way that suggests that they endorse you or your use of the work).
  • share alike – If you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.
This licensing tag was added to this file as part of the GFDL licensing update.
w:en:Creative Commons

attribution share alike

This file is licensed under the Creative Commons Attribution-Share Alike 2.5 Generic, 2.0 Generic and 1.0 Generic license.
Attribution: Konrad Eisele
You are free:
  • to share – to copy, distribute and transmit the work
  • to remix – to adapt the work
Under the following conditions:
  • attribution – You must attribute the work in the manner specified by the author or licensor (but not in any way that suggests that they endorse you or your use of the work).
  • share alike – If you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.

You may select the license of your choice.

File history

Click on a date/time to view the file as it appeared at that time.

Date/TimeThumbnailDimensionsUserComment
current14:53, 18 October 2007Thumbnail for version as of 14:53, 18 October 2007744 × 1,052 (13 KB)Slashme (talk | contribs)Traced from en:Image:Endiannessmap.jpg with inkscape, cleaned up with vim.
  • You cannot overwrite this file.

There are no pages that link to this file.

File usage on other wikis