Sei sulla pagina 1di 15

Computer Program

1. Program is a set of instructions following the rules of the chosen language.


2. Without programs, computers are useless.
3. A program is like a recipe.
4. It contains a list of ingredients (called variables) and a list of directions
(called statements) that tell the computer what to do with the variables.

Programming Language
 A vocabulary and set of grammatical rules (syntax) for instructing a
computer to perform specific tasks.
 Programming languages can be used to create computer programs.
 The term programming language usually refers to high-level languages, such
as BASIC, C, C++, COBOL, FORTRAN, Ada, and Pascal.
 You eventually need to convert your program into machine languages
 There are two ways to do this:–Compile theprogram–Interpret theprogram

Compile is to transform a program written in a high leve l programming language


from source codeinto objectcode.
•This can be done by using a tool called compiler.The software (set of programs)
that reads a program written in highlevel language and translates it into an
equivalent program in machine language is called as Compiler.
Interpreter is aprogram that executes instructions written in a high-level
language.An interpreter reads the source code onei nstruction or line at atime,
converts this line into machinecode and executes it

Computer programming is the process of writing, testing,


debugging/troubleshooting ,and maintaining the source code of compute
programs.This sourc code is written in a programming language like
C++,JAVA,Perletc.A programmer is someone who writes compute
rprogram.Compute programmers write ,test, and maintain programs or software
that tell the computer what todo
Generations/Evolutions of Programming Language

The firstgenerationlanguages or 1GL:are low level languages that are


machine languagethat the machine understand directly without translation. It is a
language made up of 1s and 0s.
Use of machine level language is very tedious,difficult and time consuming since
programmer should specify each line of coding.

The secondgenerationlanguages or 2GL:developed in 1950’s,are also low-


level languages that generally consist of assembly languages.assembly languages
use mnemonic operation codes and symbolic addresses in place of 1s and 0s like
LOAD,COMPARE ETC…
Although assembly language represented improvements but only computer
specialists familiar with the architecture of computer being used.it also requires a
translator.But the advantage is efficient,use less storage and execute much faster.

The thirdgenerationlanguages or 3GL: are high-level languages are very


much like everyday text and mathematical formulas.The main objective is relieve
the programmer of the detailed and tedious task of writing programs in machine
and assembly languages.Programs are portable.These are procedure oriented
programs.Requires translators like Compilers or Interpreters.

The fourth generation languages or4Gl : are very high level languages that
consist of statements similar to statements in a human language.These are non
procedural languages.these requires one tenth the number of statementsthat a 3gl
needs.this 4gl allows users and non computer professionals to develop software. It
minimizes maintaince cost and reduces errors. 4gl are commonly used in database
programming and scripts.
The fifth generation languages or 5GL : are programming languages that contain
visual tools to help develop a program and also contains natural languages.The text
of a natural language statement very closely resembles to human speech.these
languages are also designed to make the computer “smarter”.
A good example of a fifth generation language is Visual Basic.
COMPUTER LANGUAGES

Languages are a means of communication. Normally people


interact with each other through a language. On the same pattern,
communication with computers is carried out through a
language. This language is understood both by user and the
machine. Just as every language like English, Hindi has its
grammatical rules; every computer language is bound by rules
known as SYNTAX of that language. The user is bound by that
syntax while communicating with the computer system.

Computer languages are broadly classified as:


1. Low Level Language:
The term low level means closeness to the way in which machine
understand. The low level languages are:
a. Machine Language:
This is the language (in the form of 0’s and 1’s, called binary
numbers) understood directly by the computer. It is machine
dependent. It is difficult to learn and even more difficult to write
programs.
b. Assembly Language:
This is the language where the machine codes comprising of 0’s
and 1’s are substituted by symbolic codes (called mnemonics)
to improve their understanding. It is the first step to improve
programming structure.
Assembly language programming is simpler and less time
consuming than machine level programming, it is easier to locate
and correct errors in assembly language than in machine
language programs. It is also machine dependent. Programmers
must have knowledge of the machine on which the program will
run.

2. High Level Language

You know that low level language requires extensive knowledge


of the hardware since it is machine dependent. To overcome the
limitation, high level language has been evolved which uses
normal English like, easy to understand statements to solve any
problem. Higher level languages are computer independent and
programming becomes quite easy and simple.

Various high level languages are given below:


BASIC (Beginners All Purpose Symbolic Instruction Code):
It is widely used, easy to learn general purpose language.
Mainly used in microcomputers in earlier days.
COBOL (Common Business Oriented language): A
standardized language used for commercial applications.
FORTRAN (Formula Translation): Developed for solving
mathematical and scientific problems. One of the most
popular languages among scientific community.
C: Structured Programming Language used for all purpose
such as scientific application, commercial application,
developing games etc.
C++: Popular object oriented programming language, used
for general purpose.

COMPILER AND ASSEMBLER


As you know that High Level language is machine independent
and assembly language though it is machine dependent yet
mnemonics that are being used to represent instructions are not
directly understandable by machine. Hence to make the machine
understand the instructions provided by both the languages,
Compiler and Assembler are required to convert these
instructions into machine language.
The software (set of programs) that reads a program written in high
level language and translates it into an equivalent program in
machine language is called as Compiler.

The program written by the programmer in high level language


is called source program and the program generated by the
compiler after translation is called as object program.

The software (set of programs) that reads a program written in


assembly language and translates it into an equivalent program
in machine language is called as Assembler.
Compiler
Source Program(Higher Level Language)
Object Program (Machine Language)
SOFTWARE
As you are aware, computer cannot do anything on its own. It is
the user who instructs computer; what to do, how to do and when
to do. In order to perform any task, you have to give a set of

instructions in a particular sequence to the computer. These sets


of instructions are called Programs. Software refers to a set of
programs that makes the hardware perform a particular set of
tasks in particular order. Software can be classified mainly
into following categories and sub-categories

Classification of Software
System Software: OperatingSystem & Utilities
Application Software :GeneralizedPackages & CustomizedPackages

System Software
When you switch on the computer the programs stored in ROM
are executed which activates different units of your computer and
makes it ready for you to work on it. This set of programs can be
called system software.

System softwares are sets of programs, responsible for running


the computer, controlling various operations of computer
systems and management of computer resources. Operating
System (OS) falls under this category.

An operating system is a system software that provides an


interface for a user to communicate with the computer, manages
hardware devices (disk drives, keyboard, monitor, etc), manages
and maintains disk file systems and supports application
programs. Some popular Operating systems are UNIX, Windows
and Linux.
Although operating system provides all the features users need
to use and maintain their systems, inevitably, they still do not
meet everyone’s expectations. This has led to another type of
system software called "Utilities". These are programs that bridge
the gap between the functionality of an OS and the needs of users.
Utility programs are a broad category of software such as
compress (zip)/uncompress (unzip) files software, anti virus
software, split and join files software, etc.

Application Software

Application software is a set of programs, which are written to


perform specific tasks, for example: An application package for
managing library known as library information system is used
to manage information of library such as: keeping book details,
account holder details, book issue details, book return details
etc. Another application package for managing student details is
called student’s information system, manages student’s roll no,
name, parents name, address, class, section, processing of
examination results etc. Application software can be broadly
classified into two types:
(a) Generalized packages
(b) Customized packages

Generalized Packages

These are user friendly softwares written to cater to user’s very


general needs such as preparing documents, drawing pictures,
database to manage data/information, preparing presentations,
play games etc.
It is a group of programs that provide general purpose tools to
solve specific problems. Some of the generalized packages are
listed below:
1. Word Processing Software(for preparing documents): Word
Perfect, MS-Word, OpenOffice.org Writer
2. Spreadsheets (Data Analysis): Lotus Smart suites, MSExcel,
OpenOffice.org Calc, Apple Numbers
3. Presentations : Presentation Graphics, MS-PowerPoint,
OpenOffice.org Impress
4. Database Management System: MS-Access, OpenOffice.org Base,
MS-SQL Server, ORACLE
5. Graphics Tools: Paint shop pro, Adobe Photoshop
Customized Packages

These are the applications that are customized (or developed) to


meet the specific requirements of an organization/institution. For
Example: Student information details, Payroll packages,
inventory control etc.
These packages are developed using high-level computer
language.

Hardware

Refers to objects that you can actually touch, like disks , disk drives, display
screens, keyboards, printers, boards, and chips. In contrast, software is
untouchable. Software exists as ideas, concepts, and symbols, but it has no
substance.

Relationship between Hardware and Software

 Mutually dependent. Both of them must work together to make


computer produce a useful output.
 Software cannot be utilized without supporting hardware.
 Hardware without set of programs to operate upon cannot be
utilized and is useless.
 To get a particular job done on the computer, relevant software
should be loaded into the hardware
 Hardware is a onetime expense.
 Software development is very expensive and is a continuing
expense.
 Different software can be loaded on hardware to run different
jobs.
 Software acts as an interface between the user and the
hardware.
 If hardware is the 'heart' of a computer system, then software is
its 'soul'. Both are complimentary to each other.

COMPUTER SECURITY
Computer Security is the process of detecting and preventing any unauthorized
use of your laptop/computer. It involves the process of safeguarding against
trespassers from using your personal or office based computer resources with
malicious intent or for their own gains, or even for gaining any access to them
accidentally.The concept of computer security which can be a laptop, a
workstation, a server or even a network device. This is an introductory tutorial
that covers the basics of Computer Security and how to deal with its various
components and sub-components.

Objectives of Security

Cyberspace (internet, work environment, intranet) is becoming a dangerous place


for all organizations and individuals to protect their sensitive data or reputation.
This is because of the numerous people and machines accessing it. It is important
to mention that the recent studies have shown a big danger is coming from
internal threats, another internal threat is that information material can be easy
accessible over the intranet.

One important indicator is the IT skills of a person that wants to hack or to breach
your security has decreased but the success rate of it has increased, this is because
of three main factors −

 Hacking tools that can be found very easily by everyone just by googling
and they are endless.

 Technology with the end-users has increased rapidly within these years, like
internet bandwidth and computer processing speeds.

 Access to hacking information manuals.


Protective mesures
 First of all, is to check the physical security by setting control systems like
motion alarms, door accessing systems, humidity sensors, temperature
sensors. All these components decrease the possibility of a computer to be
stolen or damaged by humans and environment itself.

 People having access to computer systems should have their own user id
with password protection.

 Monitors should be screen saver protected to hide the information from


being displayed when the user is away or inactive.

 Secure your network especially wireless, passwords should be used.

 Internet equipment as routers to be protected with password.

 Data that you use to store information which can be financial, or non-
financial by encryption.

 Information should be protected in all types of its representation in


transmission by encrypting it.

Benefits of Computer Security Awareness


Most of the security breaches come from uninformed and untrained persons which
give information to a third party or publish data in Internet without knowing the
consequences.

Potential Losses due to Security Attacks


The potential loses in this cyberspace are many even if you are using a single
computer in your room. Here, I will be listing some examples that have a direct
impact on you and on others −
 Losing you data − If your computer has been hacked or infected, there is a
big chance that all your stored data might be taken by the attacker.

 Bad usage of your computer resources − This means that your network or
computer can go in overload so you cannot access your genuine services or
in a worst case scenario, it can be used by the hacker to attack another
machine or network.

 Reputation loss − Just think if your Facebook account or business email


has been owned by a social engineering attack and it sends fake information
to your friends, business partners. You will need time to gain back your
reputation.

 Identity theft − This is a case where your identity is stolen (photo, name
surname, address, and credit card) and can be used for a crime like making
false identity documents.

Basic Computer Security Checklist


There are some basic things that everyone of us in every operating system need to
do −

 Check if the user is password protected.

 Check if the operating system is being updated. In my case, I did a


screenshot of my laptop which is a Windows 7.

 Check if your monitor is using a screen saver.

 Check if the computer firewall is on or not.

 Check if you are doing backups regularly.

 Check if there are shares that are not useful.


 Check if your account has full rights or is restricted.

 Update other third party software’s.

The general state in Computer Security has the ability to detect and prevent
attacks and to be able to recover. If these attacks are successful as such then it
has to contain the disruption of information and services and check if they are
kept low or tolerable.

Different Elements in Computer Security


In order to fulfil these requirements, we come to the three main elements
which are confidentiality, integrity, and availability and the recently
added authenticity and utility.

Confidentiality
Confidentiality is the concealment of information or resources. Also, there is a
need to keep information secret from other third parties that want to have access
to it, so just the right people can access it.

Integrity
Integrity is the trustworthiness of data in the systems or resources by the point of
view of preventing unauthorized and improper changes. Generally, Integrity is
composed of two sub-elements – data-integrity, which it has to do with the
content of the data and authentication which has to do with the origin of the data
as such information has values only if it is correct.

Availability
Availability refers to the ability to access data of a resource when it is needed, as
such the information has value only if the authorized people can access at right
time. Denying access to data nowadays has become a common attack. Imagine a
downtime of a live server how costly it can be.
the different terminology used in Computer Security.

 Unauthorized access − An unauthorized access is when someone gains


access to a server, website, or other sensitive data using someone else's
account details.

 Hacker − Is a Person who tries and exploits a computer system for a reason
which can be money, a social cause, fun etc.

 Threat − Is an action or event that might compromise the security.

 Vulnerability − It is a weakness, a design problem or implementation error


in a system that can lead to an unexpected and undesirable event regarding
security system.

 Attack − Is an assault on the system security that is delivered by a person or


a machine to a system. It violates security.

 Antivirus or Antimalware − Is a software that operates on different OS


which is used to prevent from malicious software.

 Social Engineering − Is a technique that a hacker uses to stole data by a


person for different for purposes by psychological manipulation combined
with social scenes.

 Virus − It is a malicious software that installs on your computer without


your consent for a bad purpose.

 Firewall − It is a software or hardware which is used to filter network


traffic based on rules.
In Computer Security, layers is a well-known practice which was taken
from military techniques. The aim of this is to exhaust the attacker when he
succeeds to penetrate the first layer of security by finding a hole, then he has
to find a hole in the second layer and so on, until he arrives at the
destination if he succeeds.

Detecting a Computer Error from a Virus Infection


The following events are most likely not caused by a malware −

 Error while the system is booting in bios stage, like Bios’s battery cell
display, timer error display.

 Hardware errors, like beeps RAM burn, HDD, etc.

 If a document fails to start normally like a corrupted file, but the other files
can be opened accordingly.

 Keyboard or mouse doesn’t answer to your commands, you have to check


the plug-ins.

 Monitor switching on and off too often, like blinking or vibrating, this is a
hardware fault.

 Your computer shows a pop-up or error tables.

 Freezes frequently.

 It slows down when a program or process starts.

 Third parties complain that they are receiving invitation in social media or
via email by you.

 Files extensions changes appear or files are added to your system without
your consent.
 Internet Explorer freezes too often even though your internet speed is very
good.

 Your hard disk is accessed most of the time as you can see from the LED
light on your computer case.

 OS files are either corrupted or missing.

 If your computer is consuming too much bandwidth or network resources


this is the case of a computer worm.

 Hard disk space is occupied all the time, even when you are not taking any
action, for example installing a new program.

 Files and program sizes changes comparing to its original version.

Some Practical Recommendations to Avoid Viruses −

 Don’t open any email attachment coming from unknown people or from
known people that contain suspicious text.

 Don’t accept invitation from unknown people on social media.

 Don’t open URL sent by unknown people or known people that are in any
weird form.

Encryption :
Encryption is a transformed type of genuine information where only the
authorized parties know how to read it, so in the worst case scenario if somebody
has access to these files they would still not be able to understand the message in
it.
Backup Needed :

The main purpose is to recover the lost data from an unpredictable event like
deletion by mistake or file corruption which in many cases is caused by a virus.
An example is Ransomware, which encrypts all your data when your computer
gets infected and the second is to roll back the data at a specific time you want.
This is a scenario that happens often in companies which have applications and
databases and they want to test their applications with a specific version of data.

Potrebbero piacerti anche