1 answer

Prepare a short written lecture that describes Big Endian, Little Endian and the advantages and disadvantages of each approach.

Question:

Prepare a short written lecture that describes Big Endian, Little Endian and the advantages and disadvantages of each approach.


Answers

Solution:

Little Endian and Big Endian are two ways of storing multi-byte data-types ( int, float, etc) in computers.

Big Endian:

In Big Endian, the MSB (Most Significant Byte) of the data is placed at the byte with the lowest address. The left-most byte is the MSB that carries the greatest numerical value.

Little Endian:

In Little Endian, the LSB (Least Significant Byte) of the data is placed at the byte with the lowest address. The LSB is the right-most bit in a string, it is called that because it has the least effect on the value of the binary number.

These concept can better understand with the help of following diagram:

Advantages of Big Endian:

  • Easier for (most) human to read when examining memory values. This sometimes also applies to serializing/deserializing values when communicating with networks.
  • Easier sign checking (by checking the byte at offset 0)
  • Easier comparison: useful in arbitrary-precision math, as numbers are compared from the most significant digit. But this is less important, because it’s not a common operation
  • No need for endianness conversion when sending/receiving data to/from the network.

    This is less useful because network adapters can already swap bytes and copy them to memory in the correct order without the help of the CPU, and most modern CPUs have the ability to swap bytes themselves.

Big-Endian disadvantages:

1) Reading a value of the wrong word size will result in an incorrect value; when done on little-endian architecture, it can sometimes yield a correct result.

2) Most big-endian architectures (non-Intel) do not allow words to be written on non-word address boundaries (odd addresses). Intel allows odd address reads and writes (they get broken into 2 separate operations) which makes it easier for programmers, but more difficult for hardware designers.

Advantages of Little Endian:

  • Easier parity checking (by checking the byte at offset 0 we can see that it’s odd or even)
  • Easier for some people to read: Arabic, Hebrew and many other languages write from right to left so they read numbers in little-endian order. Some languages also read number values in little-endian order (like 134 as 4 units, 3 tens and 1 hundred), so it’s easier to know how big the current digit is. That means the thousand separator is less useful to them, as we immediately know how big the current digit is
  • Natural in computation
    • Mathematics operations mostly work from least to most significant digit, so it's much easier to work in little-endian
    • This is extremely useful in Arbitrary-precision arithmetic (or any operations that are longer than the architecture's natural word size like doing 64-bit maths on 32-bit computers) because it would be much more painful to read the digits backwards and do operations
    • It’s also useful in situations like in case a computer with limited memory bandwidth (like some 32-bit ARM microcontrollers with 16-bit bus, or the Intel 8088 with 16-bit register but 8-bit data bus).
  • Always reads as the same value if reading in the size less than or equal to the written value.
    • For example 20 = 0x14 if writing as a 64-bit value into memory at address A will be 14 00 00 00 00 00 00 00, and will always be read as 20 regardless of using 8, 16, 32, 64-bit reads (or actually any reads with length <= 64 at the address A like 24, 48 or 40 bits).

      This can be extended to arbitrarily longer types.

Disadvantages of Little Endian:

Major performance disadvantage for little-endian machines since you have to keep reversing the byte order when working with large graphical elements.

Please give thumbsup, if you like it. Thanks.

.

Similar Solved Questions

1 answer
THE CODE NEEDS TO BE ON MATLAB 2. Exercise (a) Let's write a script file that...
THE CODE NEEDS TO BE ON MATLAB 2. Exercise (a) Let's write a script file that calculates exp(2) by a Maclaurin series using a while loop exp x )=-+-+-+-+ The while loop should add each of the series terms. The program error as defined below is smaller than 0.01. Error is the exact value (i.e. ex...
1 answer
Again, before actually delving into the research to answer this question, take a minute to evaluate...
Again, before actually delving into the research to answer this question, take a minute to evaluate your existing knowledge of the subject. What are the differences in roles, function, and responsibilities of the DNP and the PhD RN?...
4 answers
Integrating areas between curves
Sketch the region enclosed by y=5x and y=7x2. Decide whether to integrate with respect tox or y. Then find the area of the region....
1 answer
Class Results Genotype Phenotype Strong Taster Weak Taster Non-taster TT 5 1 Tt 1 10 1...
Class Results Genotype Phenotype Strong Taster Weak Taster Non-taster TT 5 1 Tt 1 10 1 tt 7 5. (2 pts) What is the frequency of the taster and non-taster allele in the class? Use the most accurate formula....
1 answer
By using implicit differentiation, find the gradient, dy/dx of the tangent to the curve, x2 +...
By using implicit differentiation, find the gradient, dy/dx of the tangent to the curve, x2 + 2.2y3 - 4.0xy = 8. at the point (2.1,2.88), giving your answer to 3 decimal places. Assume that this point satisfy the given equation of the curve....
1 answer
Consider the following two thiols: C-HUSH CHZSH (1-pentanethiol) (methanethiol) (a) Which would have the lower boiling...
Consider the following two thiols: C-HUSH CHZSH (1-pentanethiol) (methanethiol) (a) Which would have the lower boiling point? Which would have the smaller enthalpy of (b) vaporization? (c) The differences in (a) and (b) are due tv dispersion forces dipole-dipole forces hydrogen bonding Submit Answer...
1 answer
The following table shows data on frictional, cyclical, structural, and total unemployment for an economy. Unemployment...
The following table shows data on frictional, cyclical, structural, and total unemployment for an economy. Unemployment Type Frictional Rate (Percent) 3.6 0.0 Cyclical Structural Total unemployment True or False: This economy is currently at its natural rate of unemployment. True O False...
1 answer
1) 2) 3) Required information Problem 12-3A Allocating partnership income LO P2 [The following information applies...
1) 2) 3) Required information Problem 12-3A Allocating partnership income LO P2 [The following information applies to the questions displayed below Kara Ries, Tammy Bax, and Joe Thomas invested $44,000, $60,000, and $68,000, respectively, in a partnership. During its first calendar year...
1 answer
Please help me set this up correctly i am confused as to which formulas to use....
please help me set this up correctly i am confused as to which formulas to use. pictures and step by step work will help. thank you. 444 41111111111111 14) (290 points) A student, standing on the ground tosses a baseball directly up into the air with a speed of 3.4 m/s. The student's hand 2.5 m ...
1 answer
What is protein, its functions, and diet in food?
what is protein, its functions, and diet in food?...
1 answer
To test whether extracurricular activity is a good predictor of college success, a college administrator records...
To test whether extracurricular activity is a good predictor of college success, a college administrator records whether students participated in extracurricular activities during high school and their subsequent college freshman GPA. Yes Yes Yes 3.49 34 3.95 3.72 2.95 3.83 3.43 2.73 3.85 2.85 No No...
1 answer
Write the following program in MIPS for use in the SPIM simulator. 1) Determine the number...
Write the following program in MIPS for use in the SPIM simulator. 1) Determine the number of occurrences of a specific character in a string. The character and the string are input by the user. The program should output Character <ch> occurs in string <string> <n> times....
1 answer
Note: Do it Using CPP Language. Thanks. Implement a program that uses dynamic memory and uses...
Note: Do it Using CPP Language. Thanks. Implement a program that uses dynamic memory and uses an insertion sort to add items to a singly-linked list. Modify the sorted listed by deleting elements as specified below. Create a sorted list (by state) of nodes containing all the state information (stat...
1 answer
Use KVL to determine the Voltage Source Ez (V). E3 (V) = ? Is =2A E2...
Use KVL to determine the Voltage Source Ez (V). E3 (V) = ? Is =2A E2 두 + V - - R4100 + 300 + E R2로L 8V 100 E3 두...
1 answer
Do a two-sample test for equality of means assuming unequal variances. Calculate the p-value using Excel....
Do a two-sample test for equality of means assuming unequal variances. Calculate the p-value using Excel. (a-1) Comparison of GPA for randomly chosen college juniors and seniors: x⎯⎯1 = 4, s1 = .20, n1 = 15, x⎯⎯2 = 4.25, s2 = .30, n2 = 15, α = .025, left-tailed test. (N...
1 answer
What is the future value of $32, 000 saved at i = 6 . 53% ,...
What is the future value of $32, 000 saved at i = 6 . 53% , compounded quarterly in 2 years?...
1 answer
Chapter 18, Problem 48 GO The drawing shows a positive point charge +q1, a second point...
Chapter 18, Problem 48 GO The drawing shows a positive point charge +q1, a second point charge q2 that may be positive or negative, and a spot labeled P, all on the same straight line. The distance d between the two charges is the same as the distance between q1 and the spot P. With q2 present, the ...
1 answer
The following trial balance was extracted from the books of P Brown on 31 December 2017...
The following trial balance was extracted from the books of P Brown on 31 December 2017                                    &...