In computing terms, hardware and software represent the two fundamental elements of a computer. Hardware includes everything with a "hard" physical presence -- your computer tower or laptop and its component electronics. Conversely, the programs on your computer, which exist as digital data rather than physical objects, are called software. In order to operate, computers require both hardware and software.
Although computers contain thousands of individual capacitors, resistors and other electrical components, these parts are built together to form a relatively small number of devices that make up a computer's hardware. Basic components include a hard drive for storing data, a processor for performing operations, memory for holding active data, and a motherboard to tie the parts together. Hardware can also include external peripherals, such as the keyboard, printer and scanner.
The term "software" is usually synonymous with "computer program" and "application." Internet Explorer, Microsoft Word and Photoshop are all examples of software. A computer's software also includes its operating system, such as Windows or Mac OS X. Operating systems act as a base, providing an interface in which all other software runs. Note that not all data on a computer is software, however: documents, music, pictures, videos and other files require a particular type of software to open, but are not software themselves.
Hardware and Software Interactions
Computers make constant use of both hardware and software. When you open a software program, the computer reads its data from the hard drive, runs its programming on the computer's processor and then displays the result on your screen. Because hardware and software work so closely together, a problem in either can cause trouble: A frozen computer, for example, can result either from defective hardware or a malfunctioning piece of software. Similarly, a computer might slow down because of outdated hardware, because it has too many software programs running, or due to a piece of malicious software, known as malware or a computer virus.
Drivers and Firmware
Two types of files, firmware and drivers, skirt the edge of the definition of software. Firmware is programming that is hard-coded into a computer chip, such as that in a router. Drivers, on the other hand, contain the programming to operate hardware. Current operating systems install most drivers automatically, making their role invisible, but every piece of hardware, from your mouse to your scanner, needs a driver to operate. In cases where your computer can't automatically install a new peripheral's driver, you need to add it yourself from an installation disk or the manufacturer's website.