Computers
Computers were originally invented to carry out only numerical calculations. Later they were gradually developed to process different types of data. such as numbers, texts, and other types of media.
A computer system consists of two types of components:
Hardware is the equipment used to perform the necessary oomputations and includes the
central processing unit (CPU), monitor, keyboard, mouse, printer, and so on.
Software consists of programs written in programming languages that control the hardware to carry out various tasks. Whatever a computer needs to process are eventually translated into binary numbers, consisting of 0s and 1s. The programs are translated into lists of instructions working on the binary numbers.
Hardware
which is like a serial number of the cell in the memory.
The data stored in a memory cell are called the contents of the cell. Program treated as a
special type of data. The concept of "stored program", let a program be stored in the memory before they can be executed.
A memory cell contains a sequence of binary digits, or bits. Each bit is either a 0 or a 1. A sequence of eight bits is usually called a byte, which represent a character, such the ones on a keyboard. To store a value into a certain address means to give it new contents (so the previous one is replaced). To retrieve a value from a memory cell means to copy the contents to another place without destroying it.
In a computer, there are several types of memory. There is the distinction between main
memory and secondary memory - the former is faster and smaller, but the latter is cheaper, and often removable. At the current time, the former is usually in silicon chips, while the latter in hard disks, floppy disks, CDs and so on.
There are two types of main memory:
Their differences are that the contents of RAM (primary or main memory) can be modified, and are usually volatile i.e., will be lost when the computer is switched off. On the other hand, secondary memory is not volatile.
The terms used to quantify storage capacities:
(b) Processing Unit: In a computer, most of the operations are performed by a CPU (central processing unit.), though there are computers with multiple CPUs. A CPU has two tasks: coordination of all computer operations and performing arithmetic and logical operations on data.
The CPU follows the instructions contained in a program (written in a computer understandable language). In each step. The CPU fetches (i.e., retrieves) an instruction, interprets its content to decide what to do, and then do it, which may mean to move data from one place to another, or change data in a certain way. Other common operations include addition, subtraction, multiplication, division, comparison, and so on. CPU usually executes instructions one after another, but can also jump to another memory cell according to an instruction.
At the current time, a CPU is in a single integrated circuit (IC), or call it a chip. A computer uses its input/output (I/O) devices to communicate with human uscs and other computers. For a human user, the usual input device is a keyboard and a mouse, and the usual output
device is a monitor (display screen), and a printer. The human-computer interaction can either happen via a command-line(CLI) user interface or a graphical user interface (GUl).
(c) Network: A computer network carries out communications among computer systems. There are different types of networks: local area network (LAN) and wide area network (WAN). The Internet connects computers all over the world. which supports the World Wide Web
(WWW), among many of its usages.
To connect to another computer, a computer needs a modem (modulator/demodulator), or some other network communication device. The communications can go through all kinds of cables, or wireless.
(d) I/O Devices: Input-Output devices like monitor, keyboard, mouse, printer, and so on.
When running, an OS has the following main responsibilities:
In summary. we often say that the OS manage processes and resources. At the current time, the most often used OS include Unix,Linux,DOS, Microsoft Windows and Macintosh OS. It is possible for a Computer to have more than one OS stored in its memory but usually only one can be used at a time.
An application software uses the computer to accomplish a specific task. They are usually purchased on CD. and installed into the computer (so it is stored in memory and known to the OS), before they can be used in the computer. The CPU, in a machine language, in which a program is written in binary code. Eventually execute every software. Since programs in this language are not easily understandable by a human user, the same program is usually also described in other, more human-readable languages.
One type of them is assembly language in which the instructions are represented by symbols and numbers. Another type of language are more human oriented, called "higher level languages", which are closer to mathematical languages and natural languages (such as English), as well as machine-independent. Typical examples of high-level language include FORTRAN, ALGOL, COBOL, BASIC, Pascal, LISP, Prolog, Perl, C, C++, and Java.
Special programs accomplish the translation high-level languages into machine languages. These are compilers, interpreters, and assemblers. A compiler translates a source program in a high level language into an object-program in the machine language. An interpreter interprets and executes a program in a high-level language line by tine. An assembler translate a source program in an assembly language.
A high-level language usually comes with many ready made common programs, so the user can include them in programs, neither than rewrite them. The program responsible for this is called a "linker". It links user object programs and related "library programs", and produces executable programs. There are software packages called "integrated development environment" (IDE)
which organize all the related software (e.g., editor, compiler, linker, loader, debugger) together to support the development of a software.
During the execution of a program in machine language, it typically get some input data from the memory, process them according the predetermined procedure, then store some output data into the memory, and display some information to the user.
Software Development:
Software developing, also called programming, is a problem-solving process. It usually consists of the following major steps:
Computers were originally invented to carry out only numerical calculations. Later they were gradually developed to process different types of data. such as numbers, texts, and other types of media.
A computer system consists of two types of components:
- Hardware
- Software.
Hardware is the equipment used to perform the necessary oomputations and includes the
central processing unit (CPU), monitor, keyboard, mouse, printer, and so on.
Software consists of programs written in programming languages that control the hardware to carry out various tasks. Whatever a computer needs to process are eventually translated into binary numbers, consisting of 0s and 1s. The programs are translated into lists of instructions working on the binary numbers.
Hardware
Major hardware components of a computer include memory, processing unit, and input-output devices.
(a) Memory is the place where the programs and data are stored. It can be imagined as an
ordered sequence of storage locations called memory cells. Each cell has a unique address,which is like a serial number of the cell in the memory.
The data stored in a memory cell are called the contents of the cell. Program treated as a
special type of data. The concept of "stored program", let a program be stored in the memory before they can be executed.
A memory cell contains a sequence of binary digits, or bits. Each bit is either a 0 or a 1. A sequence of eight bits is usually called a byte, which represent a character, such the ones on a keyboard. To store a value into a certain address means to give it new contents (so the previous one is replaced). To retrieve a value from a memory cell means to copy the contents to another place without destroying it.
In a computer, there are several types of memory. There is the distinction between main
memory and secondary memory - the former is faster and smaller, but the latter is cheaper, and often removable. At the current time, the former is usually in silicon chips, while the latter in hard disks, floppy disks, CDs and so on.
There are two types of main memory:
- RAM (Random Access Memory) and
- ROM (Read Only Memory).
Their differences are that the contents of RAM (primary or main memory) can be modified, and are usually volatile i.e., will be lost when the computer is switched off. On the other hand, secondary memory is not volatile.
The terms used to quantify storage capacities:
- 1 byte (B) = 8 bit.
- 1 kilobyte (KB) = 1024 bytes, i.e .. 2^10 bytes
- 1 megabyte (MB) = 1024 kilobytes, i.e., 2^20 bytes
- 1 gigabyte (GB) = 1024 megabytes. i.e .. 2^30 bytes
- 1 terabyte (fB) = 1024 gigabytes, i.e., 2^40 bytes
(b) Processing Unit: In a computer, most of the operations are performed by a CPU (central processing unit.), though there are computers with multiple CPUs. A CPU has two tasks: coordination of all computer operations and performing arithmetic and logical operations on data.
The CPU follows the instructions contained in a program (written in a computer understandable language). In each step. The CPU fetches (i.e., retrieves) an instruction, interprets its content to decide what to do, and then do it, which may mean to move data from one place to another, or change data in a certain way. Other common operations include addition, subtraction, multiplication, division, comparison, and so on. CPU usually executes instructions one after another, but can also jump to another memory cell according to an instruction.
At the current time, a CPU is in a single integrated circuit (IC), or call it a chip. A computer uses its input/output (I/O) devices to communicate with human uscs and other computers. For a human user, the usual input device is a keyboard and a mouse, and the usual output
device is a monitor (display screen), and a printer. The human-computer interaction can either happen via a command-line(CLI) user interface or a graphical user interface (GUl).
(c) Network: A computer network carries out communications among computer systems. There are different types of networks: local area network (LAN) and wide area network (WAN). The Internet connects computers all over the world. which supports the World Wide Web
(WWW), among many of its usages.
To connect to another computer, a computer needs a modem (modulator/demodulator), or some other network communication device. The communications can go through all kinds of cables, or wireless.
(d) I/O Devices: Input-Output devices like monitor, keyboard, mouse, printer, and so on.
Software
In a computer, there is a software that occupies a special position: the operating system (OS). Application software executes with the help of OS and are managed and supported by the OS. When a computer is turned on, it starts by executing part of the OS that is stored in a ROM, which then loads the rest of the OS from hard disk and starts it. This process is called "booting".When running, an OS has the following main responsibilities:
- communicating with the user,
- allocating resources (CPU time, memory space, printer usage .... ).
- connecting I/O devices With running programs.
- transferring data between main and secondary memory.
In summary. we often say that the OS manage processes and resources. At the current time, the most often used OS include Unix,Linux,DOS, Microsoft Windows and Macintosh OS. It is possible for a Computer to have more than one OS stored in its memory but usually only one can be used at a time.
An application software uses the computer to accomplish a specific task. They are usually purchased on CD. and installed into the computer (so it is stored in memory and known to the OS), before they can be used in the computer. The CPU, in a machine language, in which a program is written in binary code. Eventually execute every software. Since programs in this language are not easily understandable by a human user, the same program is usually also described in other, more human-readable languages.
One type of them is assembly language in which the instructions are represented by symbols and numbers. Another type of language are more human oriented, called "higher level languages", which are closer to mathematical languages and natural languages (such as English), as well as machine-independent. Typical examples of high-level language include FORTRAN, ALGOL, COBOL, BASIC, Pascal, LISP, Prolog, Perl, C, C++, and Java.
Special programs accomplish the translation high-level languages into machine languages. These are compilers, interpreters, and assemblers. A compiler translates a source program in a high level language into an object-program in the machine language. An interpreter interprets and executes a program in a high-level language line by tine. An assembler translate a source program in an assembly language.
A high-level language usually comes with many ready made common programs, so the user can include them in programs, neither than rewrite them. The program responsible for this is called a "linker". It links user object programs and related "library programs", and produces executable programs. There are software packages called "integrated development environment" (IDE)
which organize all the related software (e.g., editor, compiler, linker, loader, debugger) together to support the development of a software.
During the execution of a program in machine language, it typically get some input data from the memory, process them according the predetermined procedure, then store some output data into the memory, and display some information to the user.
Software Development:
Software developing, also called programming, is a problem-solving process. It usually consists of the following major steps:
- Specify the problem: to state the problem clearly and unambiguously.
- Analyze the problem: to identify the corresponding outputs.
- Design the algorithm: to develop a list of steps, called an algorithm, that will start with the input and stop with the output:
- Implement the algorithm: to write a program in a language according to the algorithm.
- Test the program: to verify that the program indeed produces the desired result in selected testing cases.
- Maintain the program: to update the program according to new information