Saturday, January 26, 2008

ABOUT PERSONAL COMPUTER



Introduction to the PC

This mini-guide—it’s too small to be considered a full Guide like the others—is intended for the newcomer to the world of computers. It describes computers in general terms, and is intended to give you an understanding of how they work and what they do at a high level. The sections below provide information about some of the basics, and will help you understand better some of the other descriptions on the site. I also provide an overview of the different parts of a PC and how they work.
This mini guide also contains a section on PC fundamentals, many of which form the basis of understanding more complex PC components and technologies.
How the PC Works
In this chapter I will start from the very beginning, and discuss how computers work from the ground up. This will give the beginner a good understanding of how computers work. If all of this seems familiar you might consider just skimming or even skipping this introductory mini-guide.
The Computer’s Primary Jobs
All computers, from the first room-sized mainframes, to today’s powerful desktop, laptop and even hand-held PCs, perform the same general operations on information. What changes over time is the information handled, how it is handled, how much is moved around, and how quickly and efficiently it can be done. The sections below describe the primary jobs that computers perform
Information Processing (Computation)
When you think about a computer and what it does, you of course think that it.. well.. computes. And this is indeed one part of its job. Computing is really another term for “information transformation”—changing information from one form to another. The computer spends a goodly amount of its time doing exactly this: performing math operations (changing numbers into other numbers), and translating information from one form to another (for example when a game determines using mathematics, what to display on the screen for you to see).
One special form of information the computer processes is its instructions. These are the commands that programmers give the computer to tell it what to do. Every time you do anything with a computer, you are really talking to a program which is talking to the computer. The language that computers speak, which is called machine language, is very complex and hard to understand, which is why it is hidden from all but the most technically-proficient engineers. Even most programmers never use machine language directly.
The key part of the computer that processes information is of course, the processor.
Information Storage
The computer stores different types of information in different ways, depending on what the information is, how much storage space it requires, and how quickly it needs to be accessed. This information is stored in its “short term” memory and its “long term” memory.
Your system memory (or RAM) holds information that you or the computer are working with right now. This is the computer’s “short term memory”, and is designed to be able to feed information to the processor at high speed so the processor isn’t slowed down too much while waiting for it. However, this short-term memory disappears when the computer is turned off. This is why you must always save a file that you are working on before turning off the machine.
Longer-term storage is provided by your hard disk drive, floppy drive and other devices, where information is stored permanently in the form of files, ready for you to retrieve when you need it. When you want to use your spreadsheet program, for example, the computer loads the instructions that are stored on the hard disk that tell the computer how to run it, from long-term storage (your hard disk) into short-term memory.
Information Movement and Communication
The computer also controls the movement of information from place to place. It reads the information you type on the keyboard, moves it into memory and eventually displays it on the screen or stores it in a file. This movement is called input/output or I/O and is how the computer talks to you as well as devices that are connected to it.
Moving information between machines is also an important part of modern computing. The computer uses networking components, modems and cables to allow it to communicate with other machines. This is often called, unsurprisingly, communications
How the Computer Computes
At its simplest, a computer is a device that manipulates information, sometimes also called “data”. Information can and does take many forms. You can see these different forms every time you use your computer. The words you are reading right now, the signals from the keys you press on your keyboard, the files you load on your hard disk—all are different types of information that your computer manipulates.
This section takes a look at some of the basics of how computers function. These are the principles that underly everything that happens within the computer.
Digital and Analog Information
There are two ways to represent information. Information that is continuous, that is, any piece of information can take on any of an infinite set of values, is said to be analog. For example, the time, the temperature, the speed of your car—all of these have a continuous range of values. While you say, for example, that it is 55 degrees outside, it could really be 55.12492 degrees, or any value between that and
55.
Digital information is restricted to a finite set of values. For example, a traffic light is (normally) red, yellow or green; not “yellow-green” or orange. Computers use a form of digital information called binary information. Here, the information is restricted to only two values: one or zero. Computers use binary information for several reasons:
• Simplicity: It is the simplest, most compact and least ambiguous way to express information
about something: for example, zero=off and one=on could be used to represent the status of a
regular light bulb.
• Expandability: It is easy to build on and expand: you can use two binary values together to
represent the status of two light bulbs.
• Clarity: Errors are reduced when a value can only be one or zero; the computer knows there are
no values in between, which is useful when electrical signals become “dirty”. If a 0.95 value
shows up on your modem line, the computer knows it is probably really a 1, since 0.95 isn’t a
valid value. It will interpret the 0.95 as a 1, and no data will be lost as a result.
• Speed: Computers make millions of decisions a second, and these decisions are easier to make
when the number of values is small.
Digital information is often represented only in binary form, but does not have to be. A good example is compact disk audio, where sound information is stored as digital samples. The advantage of digital sampling is that the information is the same every time it is read, so there is no “loss” in quality over time as found in conventional magnetic analog storage media.
The Mathematics of Computing
Humans represent numbers using decimal notation: that is, each digit can have one of ten values, zero through nine. This is also called base 10 mathematics and no doubt arose for biological reasons (we have ten fingers). Binary information uses only ones and zeros of course, which would bebase 2 mathematics. Just as with regular numbers you start at 0, count to 9, and then reset the 9 to a 0 and add a 1 in the “tens” place, with binary information you start at 0, count to 1, then reset the 1 to a 0 and add a 1 in the “twos” place. So binary counting goes like this: 0, 1, 10, 11, 100, 101, 110, 111, 1000, etc. Each digit in a binary number is a bit, which is a contraction of “binary digit”.
The number 111 is the binary equivalent of the decimal number 7. How? Just as 111 in decimal means 100 (10 to the second power) plus 10 (10 to the first power) plus 1, in binary 111 is 4 (2 to the second power) plus 2 (2 to the first power) plus 1, which is 7. As you can see, binary numbers can get pretty long. For example, the number 181 in decimal is 10110101 in binary. This can get quite cumbersome, and large numbers are often represented using 32, 64 or even more bits.
A shorthand for binary numbers is hexadecimal notation. These are numbers in base 16 mathematics. Each digit can take on any value from 0 to 15. Since 16 is 2 to the fourth power, four bits can take on a value from 0 to 15. This means 4 binary digits can be replaced by one equivalent hexadecimal digit. So 10110101 in binary can be broken into two 4-bit pairs, 1011 and 0101. These taken individually are 11 and 5, so 10110101 in binary is (11)5 in hexadecimal notation.
You can see the problem here of course: we only have 10 different symbols to represent numbers in our language, but hexadecimal requires 16! Having to use (11) in a single digit place is confusing. To get around this, hexadecimal numbers use the letters A through F to represent 10 through 15 (0 to 9 are of course represented by 0 to 9). So instead of saying (11)5, we say the decimal number 181 is “B5” in hexadecimal notation (or hex for short).
It can sometimes be hard to tell if a number is decimal or hexadecimal just by looking at it: if you just see “44”, does that mean 44 (“44” in decimal) or 68 (“44” in hexadecimal)? To get around this problem, two common notations are used to indicate hexadecimal numbers. The first is the suffix of a lower-case “h”.
The second is the prefix of “0x”. So “B5 in hexadecimal”, “B5h” and “0xB5” all mean the same thing (as does the somewhat redundant “0xB5h”). A set of eight bits, or two hexadecimal digits, is called a byte. “B5h” is one byte of information. Bytes are commonly used when talking about how much information something can hold, because in most cases one byte is one character. Each character you read on this screen is represented by one byte (in most cases), as part of the ASCII character set.
Computer addresses are commonly expressed in hexadecimal notation. For example, the I/O port address commonly used by the computer to talk to your printer is address 378h. Note how the “h” helps you realize this is a hex number and not the decimal number “378”.
Hardware and Software
As you know, a computer is made up of hardware and software. In some ways the analogy can be made to humans that the hardware is your body and the software is your mind. If the processor is the computer’s “brain” then the software is what that brain “thinks”. Each and every thing that happens inside the computer is controlled by some form of software: from the high level spreadsheets, games and other applications, to the low-level device drivers that tell your hardware exactly what it has to do to make them work properly.
Continuing the analogy to the human body, it is important to realize that much the way humanity is comprised of both the physical and mental, a computer is nothing without both hardware and software. In fact, even many hardware items have their own controlling software. Software is starting to appear in the most amazing places!
Human Instructions and Computer Instructions
An exercise: sort the following letters into alphabetical order: G B Y R V O. Most people can perform this task in 5 to 10 seconds. A modern PC can do it in less than 1/1000th of a second. Is the PC smarter? No, not even close. In fact, the PC doesn’t know how to sort anything at all. A processor only understands a few limited instructions, which are usually quite primitive: for example, a processor can multiply two numbers, or make a decision based on the result of comparing a number against another one. All programs you use on your PC are built from these mathematical “building blocks”, even though their complex appearance makes this difficult to believe.
To get the computer to be able to sort the letters, someone has to write a program that is constructed from the processor’s simple building blocks and performs the task that is needed. Once this is done, the computer can do the work so quickly because it has such raw speed: processors can execute many millions of instructions a second. The computer is not something to be compared to a genius, but more to a hard worker that has to be shown specifically how to make something but then can make it incredibly rapidly.
Let’s take our letters again: G B Y R V O. Now, instead of sorting them alphabetically, I will tell you that each is the first letter of a common color, and I’d like you to sort them in the order you’d find them in a rainbow. A human can adapt to this changed task and perform it in less than a minute; but for the computer, it’s a totally different matter! The program written to sort the letters has no idea about colors, and has no way to start viewing the letters in that way. To accomplish this new task, a totally different program would have to be written, which would have to include information about colors and their names, what a rainbow looks like, etc. Now once written, the computer could sort these six letters from any random order you chose, a thousand times a second! But until it was written, the PC’s response to being asked to perform this task would be the computer equivalent of “Huh?”. As you can see, humans and computers excel at very different types of tasks, and the computer can only do what it is programmed to do.
One more thing: if I ask you to theorize as to the probable cause for the extinction of the dinosaurs, you can use your accumulated experience and knowledge, combine them with your personal beliefs, and give an answer. A computer not only couldn’t give an answer, it wouldn’t know where to start trying to figure it out, and there is no programmer on the planet that could make it perform this type of “computation” at all. There are some things that computers just cannot do at all—yet.
Computer Languages
The only languages that computers understand is their own binary machine language. So for example, simply to tell the computer to add the numbers 181 and 207 together, the command might be “01101001 00110100 10110101 11001101”. Who could write a 3D action game like that? Nobody, which is why a different method was invented to tell the program what to do.
Higher-level languages act as a “compromise” between what the computer understands and what the human programmer understands. They are not like natural spoken languages, but they use symbols that are relatively easy to learn. For example, in a high-level language, the command to add those numbers might be “X = 181 + 207”. C, C++, BASIC, FORTRAN and Java are examples of these sorts of languages.
But how does the computer know what to do with “X = 181 + 207”? It doesn’t. A special program called a compiler is used to translate (or compile) the high-level language instructions into a form the computer can understand. This lets both the computer and the human work in terms they can understand well.
Example: What Happens When You Press A Key
To illustrate how the computer works, let’s take a very simple example. Let’s suppose you are working in your word processor and you type the letter “M”. Here’s what happens, in general terms, when you press the “M” button:
• The keyboard sends an electrical signal, called a scan code, to the computer saying that a button was pressed. • The keyboard controller interprets the scan code and determines that the letter pressed was an “M”. It stores this “M” in a special memory location until the processor is ready to deal with it.
• The controller sends a signal to the processor, called an interrupt. An interrupt tells the processor that some part of the computer has information for it to process and wants its attention. In this case, the keyboard controller wants the processor to look at the key you just pressed.
• The processor is almost always doing many things, sharing its time among many tasks. As a result, most every event must wait its turn. The processor services interrupts based on their priority. When it is time to deal with the keypress, the processor routes it to the program for the operating system that you are using.
• Assuming you are using a multi-tasking operating system like Windows, the operating system software decides which window you pressed the key in and sends a message to that window telling it a key was pressed.
• The window decides what to do with the keypress. Since in this case it’s your word processor window, and the key you pressed was an ordinary letter, the word processor will add that letter to its working area for the file you have open. The letter will take one byte of your computer’s memory (RAM). Other keys could be handled differently (for example, if you pressed the key to tell the word processor to exit).
• The window will then call the operating system to display the letter on the screen. • The operating system will display the letter on the screen by adding it to your video card’s video memory.
• The next time the video card refreshes your monitor (re-displays what is in its video memory) the letter will appear on the screen. Most video cards refresh the monitor between 60 and 100 times per second.
Wow, a lot happens even in a simple example like this! This all appears to occur instantaneously because the computer is simply operating at a much faster speed than humans can readily perceive. But despite the illusion created by the speed of the PC, a lot of activity is going on inside the box for even the most basic activity.
In fact, even in the description above, I omitted many steps and details. To list every single step could take dozens of pages, even for just this simple example! The processor itself is handling many thousands of chores every second, and every part of the computer has a job to do on an ongoing basis. This hopefully gives you some idea of how the computer processes, moves, and stores information. Notice that in this example all three activities occurred.
You might feel a bit overwhelmed by this, and think that maybe computers are just too complicated to understand. Fortunately, we don’t really need to understand every little detail that goes on inside them to buy and use them, or even to build them. It is usually enough to know what the parts of the computer are and how they interact.
Overview of Systems and Components
One of the great strengths of the PC platform, that has led to its overwhelming success in the marketplace, is its modularity. Most PCs are made up of many different individual components, which can be mixed and matched in thousands of different configurations. This lets you customize the PC you either buy or build to meet your exact needs.
External view of a complete, modern PC system. (Micron’s New Millennia MAX)
This section discusses some of the major components of a typical, modern PC. Some PCs have some of these combined into one physical unit, but inside, somewhere, you’ll find most if not all of these pieces. (Most modern PCs also have components not listed here; I’ll be expanding this later on to include more device types.) This section is an extremely summarized short form of the Systems and Components Reference Guide.
System Case
The box or outer shell that houses most of the computer, the system case is usually one of the most overlooked parts of the PC. While it may seem inconsequential, the case actually performs several important functions for your PC, including protection for the computer circuits, cooling, and system organization. In addition, the system case is normally purchased together with the system power supply, and must also be matched with the size, shape and electrical requirements of your motherboard. Therefore, it has an impact on your options with these important components as well.
Power
Your computer is obviously an electronic device, and its many components of course require power. Like the case, most people don’t give much thought to the power supplied to the system. The power supply in your PC can be compared to the officials at a baseball game: if they are doing their jobs properly nobody really notices them, but if they aren’t, everybody knows it and isn’t very happy about it. :^)
There are two aspects to power in the PC:
• External Power: External power refers to the power that is delivered to the back of the system case. There are several considerations regarding this power and how it is supplied that will determine if your internal power supply is going to work the way it should.
• Power Supply: The power supply is the small box that sits inside your case and takes the external power you supply to the computer. Its main job is to transform this power into a form the rest of the computer can use.
Motherboard and System Devices
The motherboard is the base of the modern computer system. It is amazing how little attention this critical component gets in mainstream circles, considering how much it does—though this situation is now improving, fortunately. If the processor is the “brain” of the computer, then the motherboard is the central nervous system and circulatory system, plus much more, all rolled into one. Here are the main parts of the motherboard and its related devices:
• Motherboard: The motherboard is the main circuit board in the computer where everything comes together. This is where you plug in your processor, memory, cache, video card and other cards. It is also where you connect your peripherals.
• System Chipset and Controllers: The chipset and other motherboard circuitry are the “smarts” of the motherboard. Their job is to direct traffic and control the flow of information inside the computer. These circuits control the processor’s access to memory, the flow of data to and from peripheral devices and communications lines, and much more. The chipset is a critical part of any computer, because it plays a big role in determining what sorts of features the computer can support. For example, which processors you can use, which types of memory, how fast you can run the machine, and what kind of system buses your PC can use, are all tied in to the type of chipset the motherboard uses.
• System Buses: The system buses are the electrical channels through which various parts of the computer communicate. The physical part of these buses, the part you see, is the set of slots in the back of the machine into which you put your video card, sound card and other cards. It is over the system buses that your video card gets information from the processor, the processor saves data to your hard disk, etc. The architecture chosen for each of the system buses has a great impact on the performance of your PC, as well as dictating your choices for video cards and other devices.
• BIOS: The system BIOS (which stands for Basic Input/Output System and is pronounced “byeoss” or “bye-ose”) is a computer program that is built into the PC’s hardware. It is the lowest-level program that runs on your computer. Its job is to act as an intermediary between your system hardware (the chipset, motherboard, processor and peripherals) and your system software (the operating system). By doing this, the operating system doesn’t have to be made different for every machine, which is why DOS will load on any PC. The BIOS is what runs when you turn on your computer, and what loads your operating system (for example, DOS). The BIOS also allows you to set or change many different parameters that control how your computer will function. For example, you tell the BIOS what sort of hard drives you have so it knows how to access them.
• Cache: The system cache is a small, high-speed memory area that is placed between the processor and the system memory. The value of the cache is that it is much faster than normal system memory. Each time the processor requests a piece of data from the memory, the system first checks the cache to see if the information is there. If it is, then the value is read from cache instead of memory, and the processor can get back to work that much sooner. If it isn’t, then the data is read from memory and given to the processor, but it is also placed into the cache in case the processor needs it again in the near future.
• System Resources: System resources are not actual physical devices; they are nothing you can reach into the machine and touch. But they are very important for two reasons. First, they dictate how your PC organizes its access to various memory areas and devices. Second, they are one of the most common areas where people have problems with the setup of their PCs: so-called resource conflicts. These are the four types of resources that various parts of your computer can sometimes decide to fight over:
• Interrupts (IRQs): As described in the example in the chapter on how the PC works, a device requests time from the processor using these interrupt requests. Under traditional designs, each device has a different IRQ number. If two try to use the same one, a conflict can result. Newer technologies can allow multiple devices to share an IRQ channel.
• Direct Memory Access (DMA) Channels: Some devices have the ability to read and write directly from the system memory, instead of asking the processor to do it for them. Cutting the “middle man” out in this manner improves the efficiency of the system. Each device that does this needs its own DMA channel.
• Input/Output (I/O) Addresses: Devices exchange information with the system by putting data into certain specific memory addresses. For example, when we pressed the letter “M” in the example mentioned above, the keypress was stored in a certain memory address until it was time for the processor to deal with it. Any time information goes into or out of the machine, to your modem or hard drive or printer for example, it uses these I/O addresses. Again, each device needs its own memory area.
• Memory Addresses: Similar to I/O addresses, many devices use blocks of memory as part of their normal functioning. For example, they may map hardware programs (BIOS code) into memory, or use a memory area to hold temporary data they are using.
The Processor
One of the smallest parts of the computer but the one that gets most of the attention, the processor is often thought of as the “brain” of the computer. An extremely sophisticated piece of miniaturized electronics, the processor (often called the CPU or Central Processing Unit) is at the bottom of all tasks the PC performs. The processor reads instructions (commands) from memory that tell it what it needs to do to accomplish the work that the user wants, and then executes them.
System Memory
The system memory holds all of the “active” information that the computer is using. When you turn the computer on the memory is empty. Each program or data file you load uses part of the system memory. When you close a program the memory is freed up for other uses. Generally, the more memory your system has, the more things you can do with it simultaneously. Increasing the amount of memory in the system also improves performance in most cases
Video Cards
Your video card performs the function of displaying the screen you see on the monitor. Inside the video card is a special kind of memory called video memory, where information is stored that represents what you see on the screen. If you look closely at the screen you can see that it is made up of many dots, or pixels. Each pixel’s color and brightness is stored in the video memory.
When the computer wants to display something, it calculates how it needs to change the color and brightness of the different pixels, and changes the values in the video memory. The video card then presents the new pixels to you on the monitor. In modern computers, this calculating job is shared between the processor and the video card itself. Having the video card do the calculation can often be much faster, because the video card is specialized to do these types of calculations. Also, while the video card is doing this work, the processor can go on to other things.
Monitors
In simple terms, the monitor, sometimes also called a CRT after the main technology used in making them, is a specialized, high-resolution screen, similar to a high-quality television. Many times per second, your video card sends the contents of its video memory out to your monitor. The screen is made up of a matrix of red, green and blue dots. The information your video card sends controls which dots are lit up and how bright they are, which determines the picture you see.
Hard Disk Drives
Your hard disk drive is your computer’s main “long term memory”—it holds your operating system, programs and data files. Hard drives are the fastest form of long-term storage your computer uses. They have currently increased in size and speed to values unheard of just a few years ago. Hard disks are (usually) permanent—they stay in one place inside your computer and cannot be removed the way floppy disks or CD-ROMs can.
Floppy Disk Drives
Floppy disks are your computer’s smallest and slowest form of long-term storage. Floppy disks provide a simple, convenient way to transfer information, install new software, and back up small amounts of files. Floppy disks are not as important a part of the computer as they were many years ago. This is largely because the floppy disk still holds the same amount it did five years ago, while most users’ needs for storage, software installation and backup, have increased ten-fold or more in that period of time. One great advantage floppy drives have is universality: virtually 100% of PCs made in the last 10 years use a standard 1.44 MB floppy drive.
CD-ROM Drives
CD-ROM stands for Compact Disk - Read Only Memory. As the name implies, CD-ROM drives use compact disks, similar to the ones that hold music, to hold computer information. And also as the name implies, they are a read-only medium. You can read information from them but not write to them (except for some special exceptions). CD-ROMs are currently the most popular way that computer companies distribute applications and games, and are ideal for multimedia information like videos, music and large graphics files.
Peripheral I/O
Peripherals are external devices that you connect to your PC. (Well, technically your hard drive and CDROM etc. are peripherals too, but often people use the term to refer to devices outside the main box). There are two main ways that you can connect peripherals to your machine: through a serial connection, or through a parallel connection:
• Serial Communications: A serial connection sends information over the line one bit at a time. It is a simple way to send information in or out of the computer, but is not as fast as other ways the computer can communicate. Serial connections are typically used for devices such as mice and modems.
• Parallel Communications: A parallel connection is faster than a serial one because it sends many bits in parallel. The advantage of this is that it is faster, but the disadvantage is that it is more complicated to do. Parallel connections are used most often for printers and removable storage drives, which need more speed than serial peripherals.
Keyboards
The keyboard is the main input device for most computers. It is used to input textual information to the PC. Keyboards are pretty much standard affairs these days, although they can vary greatly in quality and appearance, and some have significant additional features.
Mice
Until the invention of graphical operating systems, the keyboard was the only way that most people input information into their PCs. Mice are used in graphical environments to let users provide simple “point and click” instructions to the computer. The main advantage of a mouse over the keyboard is simplicity. There are also some operations that are much easier to perform with a mouse than a keyboard (such as picking an item on a screen or choosing from a list of options).
PC Fundamentals
While working on rewriting some sections of the site, I realized that I was repeating myself. Not only was I repeating myself, I was being redundant. And repetitive. :^) There are many different fundamental basics of computing that are important to know when reading about PCs, but aren’t specific to any components. Rather than writing the same background material over and over, and rather than boring people who already understanding these basics of computing, I have created this section on PC fundamentals, into which I will place various pages describing different topics that are common to various aspects of computing. I will also describe here simple components and technologies that are commonly found in various parts of the PC.
Unlike most of the rest of The PC Guide, this section isn’t organized into any particular structure. Each of the topics is independent of the others, and generally linked from the relevant sections in the rest of the site where appropriate. Feel free to browse any that interest you; as you read the Reference Guide you will find yourself coming back here from time to time.
Binary vs. Decimal Measurements
One of the most confusing problems regarding PC statistics and measurements is the fact that the computing world has two different definitions for most of its measurement terms. :^) Capacity measurements are usually expressed in kilobytes (thousands of bytes), in megabytes (millions of bytes), or gigabytes (billions of bytes). Due to a mathematical coincidence, however, there are two different meanings for each of these measures.
Computers are digital and store data using binary numbers, or powers of two, while humans normally use decimal numbers, expressed as powers of ten. As it turns out, two to the tenth power, 2^10, is 1,024, which is very close in value to 1,000 (10^3). Similarly, 2^20 is 1,048,576, which is approximately 1,000,000 (10^6), and 2^30 is 1,073,741,824, close to 1,000,000,000 (10^9). When computers and binary numbers first began to be used regularly, computer scientists noticed this similarity, and for convenience, “hijacked” the abbreviations normally used for decimal numbers and began applying them to binary numbers. Thus, 2^10 was given the prefix “kilo”, 2^20 was called “mega”, and 2^30 “giga”.
This shorthand worked fairly well when used only by technicians who worked regularly with computers; they knew what they were talking about, and nobody else really cared. Over the years however, computers have become mainstream, and the dual notation has led to quite a bit of confusion and inconsistency. In many areas of the PC, only binary measures are used. For example, “64 MB of system RAM” always means 64 times 1,048,576 bytes of RAM, never 64,000,000. In other areas, only decimal measures are found—a “28.8K modem” works at a maximum speed of 28,800 bits per second, not 29,491.
Storage devices however are where the real confusion comes in. Some companies and software packages use binary megabytes and gigabytes, and some use decimal megabytes and gigabytes. What’s worse is that the percentage discrepancy between the decimal and binary measures increases as the numbers get larger: there is only a 2.4% difference between a decimal and a binary kilobyte, which isn’t that big of a deal. However, this increases to around a 5% difference for megabytes, and around 7.5% for gigabytes, which is actually fairly significant. This is why with today’s larger hard disks, more people are starting to notice the difference between the two measures. Hard disk capacities are always stated in decimal gigabytes, while most software uses binary. So, someone will buy a “30 GB hard disk”, partition and format it, and then be told by Windows that the disk is “27.94 gigabytes” and wonder “where the other 2 gigabytes went”. Well, the disk is 27.94 gigabytes—27.94 binary gigabytes. The 2 gigabytes didn’t go anywhere.
Another thing to be careful of is converting between binary gigabytes and binary megabytes. Decimal gigabytes and megabytes differ by a factor of 1,000 but of course the binary measures differ by 1,024. So this same 30 GB hard disk is 30,000 MB in decimal terms. But its 27.94 binary gigabytes are equal to 28,610 binary megabytes (27.94 times 1,024).
Windows 95 display of the capacity of an 8 GB hard disk drive. Note the difference between the number of bytes and the “GB” values, which are clearly given as binary measures.
One final “gotcha” in this area is related to arithmetic done between units that have different definitions of “mega” or “giga”. For example: most people would say that the PCI bus has a maximum theoretical bandwidth of 133.3 Mbytes/second, because it is 4 bytes wide and runs at 33.3 MHz. The problem here is that the “M” in “MHz” is 1,000,000; but the “M” in “Mbytes/second” is 1,048,576. So the bandwidth of the PCI bus is more properly stated as 127.2 Mbytes/second (4 times 33,333,333 divided by 1,048,576).
There’s potential good news regarding this whole binary/decimal conundrum. The IEEE has proposed a new naming convention for the binary numbers, to hopefully eliminate some of the confusion. Under this proposal, for binary numbers the third and fourth letters in the prefix are changed to “bi”, so “mega” becomes “mebi” for example. Thus, one megabyte would be 10^6 bytes, but one mebibyte would be 2^20 bytes. The abbreviation would become “1 MiB” instead of “1 MB”. “Mebibyte” sounds goofy, but hey, I’m sure “byte” did too, 30 years ago. ;^) Here’s a summary table showing the decimal and binary measurements and their abbreviations and values (“bytes” are shown as an example unit here, but the prefices could apply to any unit of measure):
Only time will tell if this standard, which you can read about here, will catch on—old habits die hard. I for one will be doing my share though. As I update various portions of the site, I will be changing places where I used terms such as “kB” and “MB” for binary numbers into “kiB” and “MiB”. This may be confusing at first but I think we’ll get used to it, and at least it will eliminate the current ambiguity
Basic Electrical Components
There are several important basic electrical components that are commonly found in the circuits of virtually all PC parts and peripherals. These devices are the fundamental building blocks of electrical and electronic circuits, and can be found in great numbers on motherboards, hard disk logic boards, video cards and just about everywhere else in the PC, including places that might surprise you. They can be used and combined with each other and dozens of other devices, in so many different ways that I could not even begin to describe them all. Still, it is useful to know a bit about how they work, and this page will at least provide you with a basis for recognizing some of what you see on those boards, and perhaps understanding the fundamentals of circuit schematics. Bear in mind when reading the descriptions below that it would really take several full pages to fully describe the workings of most of these components! Fortunately, this level of detail isn’t really necessary to provide the background necessary when working with PCs.
For each component, I provide a sample photo, as well as an illustration of the component’s symbol in an electrical schematic (diagram showing how a circuit is designed). There are many variants of each of the components shown below; so the diagrams should only be considered examples.
• Battery: A direct current electricity source of a specific voltage, used primarily in small circuits.
A battery (in this case, a button cell on a PC motherboard.)
Original photo © Kamco Services
Image used with permission.

Resistor: As you could probably guess from the name, a resistor increases the resistance of a circuit. The main purpose of this is to reduce the flow of electricity in a circuit. Resistors come in all different shapes and sizes. They dissipate heat as a result of their opposing electricity, and are therefore rated both in terms of their resistance (how much they oppose the flow of electrons) and their power capacity (how much power they can dissipate before becoming damaged.) Generally, bigger resistors can handle more power. There are also variable resistors, which can have their resistance adjusted by turning a knob or other device. These are sometimes called potentiometers.
Magnified surface-mount resistor from a motherboard.
These small resistors are now much more common on PC
electronics than the older, larger pin type.
Note the “R10” designation.

Capacitor: A capacitor is a component made from two (or two sets of) conductive plates with an insulator between them. The insulator prevents the plates from touching. When a DC current is applied across a capacitor, positive charge builds on one plate (or set of plates) and negative charge builds on the other. The charge will remain until the capacitor is discharged. When an AC current is applied across the capacitor, it will charge one set of plates positive and the other negative during the part of the cycle when the voltage is positive; when the voltage goes negative in the second half of the cycle, the capacitor will release what it previously charged, and then charge the opposite way. This then repeats for each cycle. Since it has the opposite charge stored in it each time the voltage changes, it tends to oppose the change in voltage. As you can tell then, if you apply a mixed DC and AC signal across a capacitor, the capacitor will tend to block the DC and let the AC flow through. The strength of a capacitor is called capacitance and is measured in farads (F). (In practical terms, usually microfarads and the like, since one farad would be a very large capacitor!) They are used in all sorts of electronic circuits, especially combined with resistors and inductors, and are commonly found in PCs.
Three capacitors on a motherboard.The two large capacitors in the background are 1500 microfarads and 2200 microfarads respectively, as you can clearly see from their labeling. The small silver-colored capacitor in the foreground is a 22 microfarad electrolytic capactor. Electrolytics are commonly used in computers because they pack a relatively high capacitance into a small package. The plus sign indicates the polarity of the capacitor, which also has its leads marked with “+” and “-”. If you look closely you can see the “+” marking on the motherboard, just to the left of the capacitor. Note that very small Capacitors are also found in surface-mount packages just like the resistor above.
• Inductor: An inductor is essentially a coil of wire. When current flows through an inductor, a magnetic field is created, and the inductor will store this magnetic energy until it is released. In some ways, an inductor is the opposite of a capacitor. While a capacitor stores voltage as electrical energy, an inductor stores current as magnetic energy. Thus, a capacitor opposes a change in the voltage of a circuit, while an inductor opposes a change in its current. Therefore, capacitors block DC current and let AC current pass, while inductors do the opposite. The strength of an inductor is called—take a wild guess—its inductance, and is measured in henrys (H). Inductors can have a core of air in the middle of their coils, or a ferrous (iron) core. Being a magnetic material, the iron core increases the inductance value, which is also affected by the material used in the wire, and the number of turns in the coil. Some inductor cores are straight in shape, and others are closed circles called toroids. The latter type of inductor is highly efficient because the closed shape is conducive to creating a stronger magnetic field. Inductors are used in all sorts of electronic circuits, particularly in combination with resistors and capacitors, and are commonly found in PCs.
A toroidal core inductor from a PC motherboard. The two bars in the symbol represent the iron core; an air-core inductor would not have the bars. Note that very small inductors are also found in surface-mount packages just like the resistor above.
Transformer: A transformer is an inductor, usually with an iron core, that has two lengths of wire wrapped around it instead of one. The two coils of wire do not electrically connect, and are normally attached to different circuits. One of the most important components in the world of power, it is used to change one AC voltage into another. As described above, when a coil has a current passed through it, a magnetic field is set up proportional to the number of turns in the coil. This principle also works in reverse: if you create a magnetic field in a coil, a current will be induced in it, proportional to the number of turns of the coil. Thus, if you create a transformer with say, 100 turns in the first or primary coil, and 50 turns in the second or secondary coil, and you apply 240 VAC to the first coil, a current of 120 VAC will be induced in the second coil (approximately; some energy is always lost during the transformation). A transformer with more turns in its primary than its secondary coil will reduce voltage and is called a step-down transformer. One with more turns in the secondary than the primary is called a step-up transformer. Transformers are one of the main reasons we use AC electricity in our homes and not DC: DC voltages cannot be changed using transformers. They come in sizes ranging from small ones an inch across to large ones that weigh hundreds of pounds or more, depending on the voltage and current they must handle.
A transformer from the interior of a PC power supply.
Note the large heat sink fins above and below it.

Diode / LED: A diode is a device, typically made from semiconductor material, that restricts the flow of current in a circuit to only one direction; it will block the bulk of any current that tries to go “against the flow” in a wire. Diodes have a multitude of uses. For example, they are often used in circuits that convert alternating current to direct current, since they can block half the alternating current from passing through. A variant of the common diode is the light-emitting diode or LED; these are the most well-known and commonly-encountered kind of diode since they are used on everything from keyboards to hard disks to television remote controls. An LED is a diode that is designed to emit light of a particular frequency when current is applied to it. They are very useful as status indicators in computers and battery-operated electronics; they can be left on for hours or days at a time because they run on DC, require little power to operate, generate very little heat and last for many years even if run continuously. They are now even being made into low-powered, long-operating flashlights.
A diode (top) and a light-emitting diode (bottom). Note the symbol on the circuit board above the diode, and the “CR3” designation. The LED shown is an older, large diode from a system case. LEDs are now more often round and usually smaller.
Fuse: A fuse is a device designed to protect other components from accidental damage due to excessive current flowing through them. Each type of fuse is designed for a specific amount of current. As long as the current in the circuit is kept below this value, the fuse passes the current with little opposition. If the current rises above the rating of the fuse—due to a malfunction of some sort or an accidental short-circuit—the fuse will “blow” and disconnect the circuit. Fuses are the “heroes” of the electronics world, literally burning up or melting from the high current, causing a physical gap in the circuit and saving other devices from the high current. They can then be replaced when the problem condition has been corrected. All fuses are rated in amps for the amount of current they can tolerate before blowing; they are also rated for the maximum voltage they can tolerate. Always replace a blown fuse only with another of the same current and voltage rating.
A fuse, sitting in its fuse holder,
from the interior of a PC power supply.

Jumpers
Jumpers are small devices that are used to control the operation of hardware devices directly, without the use of software. They have been around since the very first PCs, and are still used on many types of modern hardware today. A jumper consists of two primary components:
• Jumper: The jumper itself is a small piece of plastic and metal that is placed across two jumper pins to make a connection, or removed to break a connection. They come in a few standard sizes (and some non-standard ones I’m sure); only one or two sizes are commonly seen on PCs. Jumpers are sometimes also called shunts.
• Jumper Pins: A set of pins, across two of which a jumper is placed to make a specific connection.
Note: Some people actually call the jumper pins the “jumper”; others call the pins plus the jumper a “jumper”. The terms are used rather loosely, but it’s nothing to worry about.
A jumper is a mechanical switch that is easily modified by hand. Essentially, it’s a circuit that has been broken intentionally and a pin placed on each end of the broken connection. Placing a jumper across two pins connects them electrically, completing the circuit; removing a jumper from a set of pins breaks the circuit. Hardware engineers allow users to configure devices or change their operation by creating different sets of pins that implement different functions depending on how the jumpers are set. When power is applied to the device it detects which circuits have been closed or opened. The most common place where most folks see jumpers are in hard disk drives and motherboards. On hard disks they are typically used to tell the hard disk what role to play on the hard disk interface cable; on motherboards they control as many as a dozen different settings related to how the motherboard functions. Usually these jumper settings are printed directly on the hardware for convenience.
The main advantage of using jumpers for controlling hardware is that they are simple and straightforward: if you get the settings correct, the hardware (assuming it is not defective) will perform as it should. What you see is what you get. The biggest disadvantage associated with using jumpers is the fact that they require physical manipulation. If you need to change a jumper, you have to physically open the PC to access the device, and that’s not always easy to do. The jumpers are also very small and easy lost if you are not careful. Also, you have to make these changes with the power off. These issues are one reason why the effort was made a few years ago to move away from jumpers on hardware devices and towards software configuration of hardware using techniques such as Plug and Play.
Jumpers are given many different designations. On motherboards, it is common to see them numbered, using a sequence such as “JP1”, “JP2”, etc. For some functions, jumpers are treated as a group—multiple jumpers must be placed on particular sets of pins to enable or disable a specific function. The documentation that comes with any hardware device should tell you how to set its jumpers to control various functions; if you don’t have the documentation, check the manufacturer’s web site.
A group of jumper pins on a motherboard, showing three jumpers connected and two sets of pins “bare” (no jumpers attached). Note the “JP7” and “JP15” labels in the foreground.
Tip: One problem experienced by many who work with hardware occurs when a jumper needs
to be removed from a set of two pins to disable a function: what do you do with it? Some keep a big “box o’ miscellaneous hardware” for jumpers and similar small items, but since the jumpers are small and easy to lose, one trick that is often used is to “dangle” the shunt by connecting it to only one pin. Since the second half of the shunt is disconnected, this is electrically equivalent to removing it altogether, and ensures that it will always be there for you the next time you need it.
A jumper “dangled” from a set of pins. This is electrically equivalent to removing the jumper entirely.

No comments: