Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

BIT 100 Assignment 1

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 11

1

PETER SAGINI MORWABE

Reg No.: INP17/00016/20

Course: BIT100

Assignment 1
2

Define a Computer
A computer is an electronic machine that gathers information, stores it, processes it according to
user instructions, and then returns the result.

History of Computer
In the history of computer development, the advancement of modern computers is always
referred to as generations of computing devices.
First Generation of Computers
This was from the period 1942-1955. They relied machine language to perform operations and
could only solve one problem at a time. They used vacuum tubes for circuitry and magnetic
drums for memory, and were often enormous, taking up entire rooms.
Second Generation of Computers
This was from the period 1955-1964. They relied on assembly languages (COBOL and
FORTRAN) to perform operations. They advanced from vacuum tubes to transistors. This made
the computers smaller, faster and more energy-efficient.
Third Generation of Computers
This was from the period 1964-1975. They developed integrated circuit which increased the
speed and efficiency of computers. High-level programming languages such as FORTRON-II to
IV, COBOL, and PASCAL PL/1 were employed here.
Fourth Generation of Computers
This was from the period 1975-Present. The invention of the microprocessors brought along the
fourth generation of computers. Programming languages such as Java, C++, C were used in this
generation.
Fifth Generation of Computers (Present and Beyond)
The defining aspect of this generation is artificial intelligence. The utilization of parallel
processing and superconductors is helping to make artificial intelligence a reality. Fifth-
generation computers use ULSI (Ultra Large-Scale Integration) technology.
3

Components of a Computer
A computer device is made-up of various components which aid in its effective processing and
functioning. The computer system contains three main components which include; Input Unit,
Output Unit and Central Processing Unit.

Central Processing Unit (CPU)

Memory Unit
Input Unit Output Unit
Control Unit

Arithmetic
and Logic
Unit

Schematic block diagram illustrating the main components of a computer

Input Unit
Input Unit is used to transmit control signals and raw data into the information processing system
by the user before computation and processing. All the instructions and data received from the
input unit devices are transformed into binary code (primary memory acceptable format). Some
of the important input devices;
a) Keyboard- It contains keys to help input data to the computer. The keys are
subdivided into:
 Function keys- they are labelled as F1 to F12 and each function is used to
perform a specific task.
 Typing keys- they include numbers, letters, punctuation and symbol keys.
 Numeric keypad- They contain number keys
 Control keys-They are used in combination with other keys or alone to
perform specific tasks.
b) Mouse-It sends corresponding signals to the Central Processing Unit when the mouse
buttons are clicked. Mouse devices can be further categorized into three groups which
include, mechanical, optomechanical, and optical.
c) Light pen-It is used to draw pictures or select an item from a menu item on the
monitor screen. It consists of a photocell and optical system placed in a small tube
that detects the screen location and transmits the corresponding signal to the central
processing unit.
d) Scanner- It is a device that captures images from the source and converts them into
digital form which are then stored in a computer.
4

Output Unit
Output unit collects information from the central processing unit and then transmits it to a device
or an external storage in hard or soft processed form. The output unit provides the final result
once all the processing is done within the mechanism of a device. Some of the common output
devices are:
a) Monitor- It displays information in text or pictorials form. The flat-panel display
monitor is categorized into emissive and non-emissive displays.
b) Printer- it is utilized to print information on paper.
c) Speaker- It receives audio signals from the processor and outputs it as sound waves.

Central Processing Unit (CPU)


The microprocessor chip is the main chip in a computer. It is also referred to as the central
processing unit. The Central Processing Unit is most significant part of any computer device.
The chip (CPU) is mounted on a printed circuit called the motherboard. A motherboard can be
defined as a printed circuit board that connects other components through the use of electrical
pathways or traces. The chip can control the functions and activities of other chips connected to
the computer. It can also perform computation and logical tasks.

It consists of three major elements which include;


Control Unit
Its core function is to manage the functioning of a computer device. It collects data input from
the user and directs it on for processing and once the data is processed, it received the output and
presents it to the user.
Memory Unit
The memory unit retains data results till further processing. For example, when a user enters data
using an input device, the entered data is instantly saved in the memory unit of the central
processing unit. They are divided into two RAM and ROM.
i) Random-Only Memory- It stores information permanently.
ii) Random Access Memory- It stores information temporarily. There are two main
types of RAM: Dynamic RAM (DRAM) and Static RAM (SRAM).
Arithmetic and Logic Unit
The Arithmetic and Logic Unit is used for processing data. The main operations of the
Arithmetic Logic Unit are subtraction, addition, division, multiplication, comparison and logic.

Main Functions of the CPU include;


 Control the sequence of operation.
5

 Control use of main storage in storing information and data.


 Issuing commands to all parts of the computer system.
STORAGE DEVICES
There are two main storage options in a computer which are;
Hard-Disk Drive
A Hard-Disk Drive (HDD) is a legacy technology as compared to SSD (Solid-state drive). It
contains a spinning disk inside where data is stored magnetically. Sometimes its magnetic
property can cause to mechanical breakdowns. HDDs are much cheaper than SSDs.
Solid-State Drive
A Solid-State Drive (SSD) is a form of storage used in computers. SSDs are much faster as
compared to HDD (Hard-disk drives). The reason why they are faster than the HDD is because
SSDs read and write data to a set of interconnected flash memory chips, these chips utilize
floating gate transistors (FGTs) to keep an electric charge. This allows the SSDs to store data if
connected to a power source or not. SSDs are more durable, quieter, more compact and consume
less energy than HDDs.

The Core Processes of The Systems Development Life Cycle

1. System Planning and Selection


6

In this phase, project managers examine the terms of the project. This can include selecting a
particular project to work on, creating a schedule with target goals, creating the project’s team
and leadership structure or calculating labor and material costs. During this stage, an
organization decides whether to allocate resources should be allocated to the development
Also, at this stage, the scope of the proposed system is determined, the project manager and the
initial team of system analysts produce a specific plan.

2. System Analysis
System analysis involves studying the organization’s information systems and current procedures
used to perform organizational tasks.
System analysis contains two subphases, which include;
I. Requirement Determination
It includes a thorough study of any systems in the organization that might be
improved or replaced as part of the project.
II. Requirements Structuring
It involves analysts studying the requirements and structuring them according to
inter-relationships and eliminate any redundancies (Radack, 2009).
At the end of this phase a Software Requirement Specification (SRS) document
that specifies the hardware, software, functional and network requirement of the project is
prepared.

3. System Design
During this phase, analysts transform the description of the recommended solutions into a logical
structure. For example, the SRS document developed in the previous phase is transformed into a
logical design in this phase. The proposed design is then reviewed to ensure that the final design
meets all the requirements stated in the SRS document. After the design is reviewed, a design
document which be utilized in the next phase is prepared.
4. Systems Implementation
During this phase, analysts turn the design document into a working system that is tested and
then put to use.
System implementation includes:
I. Coding
During coding, programmers develop programs that make up a system.
7

II. Testing
During testing, analysts and programmers tests the systems to identify defects and
errors and correct them before the software is released. A test report which includes test
tasks such as testing criteria and case generation is prepared.
III. Installation
During installing, the system becomes part of the organization.

Difference between a Hardware and Software?


Hardware refers to the physical and visible components of the system while Software is a set of
programs that enables the hardware to perform a specific task.
Types of Software
i) System Software – is any program that controls the computer hardware or that can be
used to maintain the computer in some way.
ii) Application software- is a computer program designed to carry out a specific task
other than the one relating to the operation of the computer itself.
Difference between Computer program and software
Software is a set of programs that enables the hardware to perform a specific task while a
computer program is a set of instructions that is used as a process of creating a software program
by using programming language

History of Programming Languages


Year Event
1843 Ada Lovelace is credited as being the first
person to describe or write a computer
program. In 1843, she described an algorithm
to compute Bernoulli numbers using the
Analytical Engine.
1889 The Hollerith tabulating machine was
invented by Herman Hollerith in 1889,
allowing for data to be programmatically
counted and tabulated.
1956 One of the first programming languages,
FORTRAN, was introduced to the public on
October 15, 1956. It was developed by John
Backus and others at IBM.
1958 The second-oldest programming language,
LISP was developed by John McCarthy and
8

was first used in 1958.


1959 COBOL started being developed in 1959 by
Grace Hopper and Bob Bemer.
1964 The original BASIC programming language
was developed by John Kemeny, Mary
Keller, and Thomas Kurtz, and was
introduced to the public on May 1, 1964.
1965 Simula is considered the first ever object-
oriented programming language, developed
around 1965 by Ole-Johan Dahl and Kristen
Nygaard.
1966 Martin Richards developed the BCPL
programming language in 1966, which
became popular due to its portability.
1966 The MUMPS programming language was
developed by Neil Pappalardo at
Massachusetts General Hospital in 1966.
1967 Known for its graphics capabilities, Logo was
created by Seymour Papert in 1967.
1971 Pascal was developed in 1971 by Niklaus
Wirth.
1972 Dennis Ritchie and Brian Kernighan
developed the C programming language at
Bell Labs in 1972.
1972 The Prolog programming language was
developed by Alain Colmerauer and
colleagues in 1972 at the University of
Marseilles.
1972 Smalltalk was the second ever object-oriented
programming language and the first true IDE,
developed by Alan Kay and others at Xerox
PARC in 1972.
1974 SQL is a database programming language and
was developed by Edgar Codd in 1974 and is
still important in the programming language
world.
1975 A variation of LISP, the Scheme
programming language was created in 1975
by Guy Steele and Gerry Sussman at MIT's
Artificial Intelligence lab.
1975 The Altair BASIC programming language
was developed by Bill Gates, Paul Allen, and
Monte Davidoff, and was made available for
use on January 2, 1975. It was used to create
programs for Altair computers.
1979 Development of the C++ programming
9

language was started in 1979 by Bjarne


Stroustrup. Originally called "C with classes,"
C++ is one of the most widely-used
programming languages.
1979 Oracle released the first commercial version
of SQL in 1979.
1979 The Department of Defense developed the
Ada programming language, originally named
DoD-1, and named it after Ada Lovelace in
May 1979.
1984 FoxPro is a programming language for
developing database applications and was
released by Fox Software in 1984.
1984 Cleve Moler started developing the MATLAB
programming language in the late 1970s, and
it was released to the public, with the
MATLAB software package, in 1984.
1987 The open source programming language Perl
that was developed by Larry Wall was
introduced in 1987. It is commonly used in
creating CGI scripts and programming web
applications.
1988 Developed in the mid-1980s by Brad Cox and
Tom Love, the Objective-C programming
language was officially licensed by NeXT in
1988.
1990 Tim Berners-Lee developed the HTML
markup language in 1990. HTML is one of
the most popular and widely-used
programming languages in the world.
1990 Haskell, a general-purpose programming
language, was introduced in 1990.
1990 Engineers at Apple developed the Dylan
programming language in the early 1990s.
Dylan was designed to resemble the syntax of
the ALGOL programming language.
1991 Development of Python was started in 1989
by Guido van Rossum and released to the
public in 1991.
1991 Visual Basic was developed by Alan Cooper
and released in May 1991.
1993 Lua was created in 1993 by engineers at the
Pontifical Catholic University of Rio De
Janeiro, Brazil.
1993 R is a programming language created by
Robert Gentleman and Ross Ihaka and
10

introduced in 1993.
1994 The concept of CSS was started by Håkon
Wium Lie in 1994. W3C introduced the
specification for CSS in 1996.
1995 Java was developed by James Gosling and
other developers at Sun Microsystems, and
was first introduced to the public in 1995.
1995 The object-oriented programming language
Ruby developed by Yukihiro Matsumoto was
first released in 1995.
1995 The experimental, multi-paradigm Curry
programming language was introduced by
Michael Hanus, Herbert Kuchen, and Juan
Jose Moreno-Navarro in 1995.
1995 Racket is a general purpose programming
language developed by Matthias Felleisen in
1995.
1995 A server-side interpreted scripting language,
PHP was developed by Rasmus Lerdorf
starting in 1994 and released on June 8, 1995.
1995 Originally named LiveScript when released in
November 1995, JavaScript was developed by
Brendan Eich and renamed as such in
December 1995.
1996 Introduced in 1996, OCaml is an object-
oriented version of the Caml programming
language.
1998 XML is a markup language, with the
specification for XML being developed by
W3C and recommended on February 10,
1998.
1999 Development of the D programming language
started in December 1999. D is a higher level
language compared to C++.
2000 Based on C++ and Java, the C# programming
language was developed by Microsoft and
introduced in June 2000. C# became an ISO
standard in 2003.
2003 The object-oriented programming language
Scala was introduced in 2003.
2005 Don Syme developed the F# programming
language and Microsoft first introduced it in
2005.
2007 The Go programming language was
developed at Google starting in 2007. It was
completed and introduced to the public in
11

2009.
2007 Rich Hickey developed the Clojure
programming language and released the first
version in 2007.
2008 Introduced in 2008, Nim is a programming
language used to develop software requiring
strict limits on how system memory is used.
2008 The object-oriented programming language
Reia was introduced in 2008.
2010 The multi-paradigm CoffeeScript
programming language, capable of being
compiled into JavaScript, was officially
released in 2010.
2011 Google developed the open source web-based
Dart programming language, introducing it to
the public in October 2011.
2012 Julia was developed by Jeff Bezanson, Alan
Edelman, Stefan Karpinski, and Viral B. Shah
and released in 2012. It is a high-level
programming language used for scientific
computing.
2014 Babel is a general-purpose programming
language developed in 2014 and used to
create programs for conserving battery life
and system resources on devices.
2014 Created by Apple and released on June 2,
2014, the Swift programming language helps
create programs and apps for iOS, macOS, the
Apple Watch, and AppleTV.
2015 Graydon Hoare started development of the
Rust programming language around 2010.
After contributions from hundreds of people,
it was officially released as version 1.0.0
alpha by Mozilla research on January 9, 2015.

You might also like