Skip to main content

What Is Hamming code ?




   Hamming code is a set of error-correction code s that can be used to detect and correct bit errors that can occur when computer data is moved or stored. Hamming code is named for R. W. Hamming of Bell Labs.

   Like other error-correction code, Hamming code makes use of the concept of parity and parity bit s, which are bits that are added to data so that the validity of the data can be checked when it is read or after it has been received in a data transmission. Using more than one parity bit, an error-correction code can not only identify a single bit error in the data unit, but also its location in the data unit.

   In data transmission, the ability of a receiving station to correct errors in the received data is called forward error correction (FEC) and can increase throughput on a data link when there is a lot of noise present. To enable this, a transmitting station must add extra data (called error correction bits ) to the transmission. However, the correction may not always represent a cost saving over that of simply resending the information. Hamming codes make FEC less expensive to implement through the use of a block parity mechanism.

   Computing parity involves counting the number of ones in a unit of data, and adding either a zero or a one (called a parity bit ) to make the count odd (for odd parity) or even (for even parity). For example, 1001 is a 4-bit data unit containing two one bits; since that is an even number, a zero would be added to maintain even parity, or, if odd parity was being maintained, another one would be added. To calculate even parity, the XOR operator is used; to calculate odd parity, the XNOR operator is used. Single bit errors are detected when the parity count indicates that the number of ones is incorrect, indicating that a data bit has been flipped by noise in the line. Hamming codes detect two bit errors by using more than one parity bit, each of which is computed on different combinations of bits in the data. The number of parity bits required depends on the number of bits in the data transmission, and is calculated by the Hamming rule:

p
d + p + 1 < = 2 (1)


   Where d is the number of data bits and p is the number of parity bits. The total of the two is called the Hamming code word, which is generated by multiplying the data bits by a generator matrix .

Comments

Popular posts from this blog

What is the difference between a direct and an indirect address instruction ?

Direct addressing means the instruction refers directly to the address being accessed. That is, the instruction encoding itself contains the address of the location. Depending on the instruction set, it may also allow computing a small index relative to the address. When used that way, you can think of that as a direct-indexed mode. (Note: Some processors call ‘direct’ mode ‘absolute’, such as the 6502.)

Indirect addressing uses an address held in a register or other location to determine what memory location to read or write. The idea here is that the instruction itself isn’t directly telling you the address to access, but rather indirectly telling the CPU where to find that address. The processor may also allow you to add a small offset to the indirect address, giving an indirect-indexed addressing mode.
Also Read : 5 Best Terminal Emulators for Linux The 6502 one is a little quirky: The 6502 doesn’t have general-purpose registers large enough to store addresses, so i…

What is ASP.NET? and it's ARCHITECTURE

What is ASP.Net?ASP.Net is a web development platform provided by Microsoft. It is used for creating web-based applications. ASP.Net was first released in the year 2002.
The first version of ASP.Net deployed was 1.0. The most recent version of ASP.Net is version 4.6. ASP.Net is designed to work with the HTTP protocol. This is the standard protocol used across all web applications.

ASP.Net applications can also be written in a variety of .Net languages. These include C#, VB.Net, and J#. In this chapter, you will see some basic fundamental of the .Net framework.

The full form of ASP is Active Server Pages, and .NET is Network Enabled Technologies.
ASP.NET Architecture and its Components ASP.Net is a framework which is used to develop a Web-based application. The basic architecture of the ASP.Net framework is as shown below.
 he architecture of the.Net framework is based on the following key components

Language – A variety of languages exists for .net framework. They are VB.n…

What Is Defensive Programming ?

Defensive programming is a form of defensive design intended to ensure the continuing function of a piece of software under unforeseen circumstances. Defensive programming practices are often used where high availability, safety or security is needed. – WikiPedia


Introduction Defensive programming is a form of defensive design intended to ensure the continuing function of a piece of software under under unforeseen circumstances. Defensive programming practices are often used where high availability, safety or security is needed.
Advantages Defensive programming is an approach to improve software and source code, in terms of:
General qualityMaking the source code comprehensibleMaking the software behave in a predictable mannerDrawback Overly defensive programming, however, may safeguard against errors that will never be encountered, thus incurring run-time and maintenance costs. There is also the risk that the code traps or prevents too many exceptions, potentially resulting i…