Showing posts with label Virtual University short notes. Show all posts
Showing posts with label Virtual University short notes. Show all posts

CS101 Short Notes For Mid Term From Lec 1 To 22

By: // No comments:

CS101 Short Notes For Mid Term

Here You can read and download CS101 Short Notes for Mid Term From Lecture 1 to 22 for exam preparation.

CS101 Short Notes For Mid Term From Lec 1 To 22
CS101 Short Notes For Mid Term From Lec 1 To 22
Previously we shared :
CS101 Short Notes For Final Term From Lecture 22 To 45.

CS101 Short Notes From Lec 1 To 22


Who is Charles Babbage (1791-1871)

· Creator of the Analytical Engine - the first general-purpose digital computer (1833)

The Analytical Engine

A programmable, mechanical, digital machine

Could carryout any calculation

Could make decisions based upon the results of the previous calculation

Components: input; memory; processor; output
Ada, Countess Of Lovelace(1815-52)

Babbage: the father of computing

Ada: the mother?

Wrote a program for computing the Bernoulli’s sequence on the Analytical Engine - world’s 1st computer program

Ada: A programming language specifically designed by the US Dept of Defense for developing military applications was named Ada to honor her contributions towards computing
A Lesson That We All Can Learn From Babbage’s Life

Charles Babbage had huge difficulties raising money to fund his research

As a last resort, he designed a clever mathematical scheme along with Ada, the Countess of Lovelace

It was designed to increase their odds while gambling. They bet money on horse races to raise enough money to support their research experiments

Guess what happened at the end? The lost every penny that they had.


1. Fast


2. Bored


3. Storage

Here Is A Fact:

In 1997 Deep Blue, a supercomputer designed by IBM, beat Gary Kasparov, the World Chess Champion
That computer was exceptionally fast, did not get tired or bored. It just kept on analyzing the situation and kept on searching until it found the perfect move from its list of possible moves …

The “Turing test”

A test proposed to determine if a computer has the ability to think. In 1950, Alan Turing (Turing, 1950) proposed a method for determining if machines can think. This method is known as The Turing Test.

Vacuum Tube – 1904

A vacuum tube is just that: a glass tube surrounding a vacuum (an area from which all gases has been removed). A British scientist named John A. Fleming made a vacuum tube known today as a diode. Then the diode was known as a "valve,"

ABC – 1939


The Atanasoff-Berry Computer was the world's first electronic digital computer. It was built by John Vincent Atanasoff and Clifford Berry at Iowa StateUniversity during 1937-42.


Harvard Mark 1 – 1943


Howard Aiken and Grace Hopper designed the MARK series of computers at Harvard University. clicking metal parts, 55 feet long and 8 feet high. The 5-ton device contained almost 760,000 separate pieces. Used by the US Navy for gunnery and ballistic calculations, the Mark I was in operation until 1959.

ENIAC – 1946

ENIAC (Electrical Numerical Integrator AndCalculator). The U.S. military sponsored their researchIt took the team about one year to design the ENIAC and 18 months and 500,000 tax dollars to build it. The ENIAC contained 17,468 vacuum tubes, along with 70,000 resistors and 10,000 capacitors.

Transistor

The first transistor was invented at Bell Laboratories on December 16, 1947 by William Shockley. Compared to vacuum tubes, it offered:
smaller size
better reliability
lower power consumption
lower cost

Floppy Disk – 1950:


Invented at the Imperial University inTokyo by Yoshiro Nakamats.

UNIVAC 1 – 1951
The first commercially successful electronic computer, UNIVAC I, was also the first general purpose computer - designed to handle both numeric and textual information. It was designed by J. Presper Eckert and John Mauchly.

Compiler – 1952

Grace Murray Hopper an employee of Remington-Rand worked on the NUIVAC. She took up the concept of reusable software in her 1952 paper entitled "The Education of a Computer" and developed the first software that could translate symbols of higher computer languages into machine language. (Compiler)

ARPANET – 1969


ARPA was assigned to research how to utilize their investment in computers via Command and Control Research (CCR). Dr. J.C.R. Licklider was chosen to head this effort. Developed for the US DoD Advanced Research Projects Agency


Intel 4004 – 1971


The 4004 was the world's first universal microprocessor.

Altair 8800 – 1975


Developers Edward Roberts, William Yates and Jim Bybee spent 1973-1974 to develop the MITS (Micro Instruments Telemetry Systems ) Altair 8800. The price was $375, contained 256 bytes of memory (not 256k),but had no keyboard, no display, and no auxiliary storage device.

Cray 1 – 1976


The Cray 1 was the world's first "supercomputer," a machine that leapfrogged existing technology when it was introduced in 1971.

IBM PC – 1981


On August 12, 1981, IBM released their new computer, re-named the IBM PC. The "PC" stood for "personal computer" making IBM responsible for popularizing the term "PC".


The first IBM PC ran on a 4.77 MHz Intel 8088 microprocessor. The price tag started at $1,565, which would be nearly $4,000 today.

Apple Macintosh – 1984

Apple introduced the Macintosh to the nation onJanuary 22, 1984. The original Macintosh had 128 kilobytes of RAM, although this first model was simply called "Macintosh" until the 512K model came out in September 1984. The Macintosh retailed for $2495.

World Wide Web -1989


WWW quickly gained great popularity among Internet users.

What is World Wide Web?

· A huge resource of information

· Logically unified: Any one from any where can access the information using a very simple scheme consisting of links & URLs

· Physically distributed: The information is stored on Internet-connected computers that are spread all over the globe


Browser

A browser is an application program that provides a way to look at and interact with all the information on the World Wide Web.

URL

URL (Uniform Resource Locator, previously Universal Resource Locator) – pronounced YU-AHR-EHL or, in some quarters, UHRL - is the address of a file (resource) accessible on the Internet.

How many Web pages are there?
In 1999 there were 800 million Web pages (15 terra (1012) bytes of text)
In year 2002, the number is supposed to be 8 billion
If you spend a minute reviewing each of these pages, it will take more than 15,000 years to go through them all

What is secret behind the explosive growth of the Web?
Anarchy – any page is allowed to link to any other
There are no controls over who puts what on the Web

Everyone can put whatever they want to put on the Web – and they do!
The most popular Web sites?

• AOL – Most popular ISP’s Web site
Microsoft – Most popular software developer’s Web site
Yahoo – Most popular multi-service Web site
Amazon – most popular shop on the Web
CNN – most popular news Web site
Google – most useful search engine

CS101 SHORT NOTES PART 2

Recommended: CS101 Mid Term 16 SOlved Papers + Quizzes + Solved Subjectives + HTML TAGS

What is a Web Site?

A Web site is a related collection of World Wide Web (WWW) files that includes a beginning file called a home page.

What is a Web Search Engine?

· Search engines continuously scan the Web and compile a list of all the Web pages that they find

Internet & Web 


The “Internet” and the “Web” are not the same
In fact, the “Web” is a service that runs over the “Internet”. In addition to the Web, there are many other services that run over the Interne.
Internet is like the network of roads in a city, whereas Web is a service like the Bus Service that run over those roads. Just like other services can use the roads (e.g. wagons),

Info is available on Web

Information about almost every thing known to mankind and then some!

The info is in the form of:

– Text

– Graphics

– Animation

– Video

– Sound

The Semantic Web 

What unique feature distinguishes the Web of today with the Semantic Web of tomorrow? 

Whereas, today’s Web’s content is designed for humans to read; the Semantic Web’s content will be designed for computers to understand meaningfully
However, the Semantic Web is not a replacement but an extension of the present Web, in which information is given well defined meaning
Some progress is already being made for adding “Semantic Content” on to the Web, but a lot more will happen in the next 5 years

Computer Types

Computer types according to capability are
Supercomputers
Mainframes
Servers
Desktops
Portables

Supercomputers 

State-of-the-art machines designed to perform calculations as fast as the current technology allows
Used to solve extremely complex and large-scale problems: weather prediction, simulation of atomic explosions; aircraft design; movie animation
Cost tens of millions of dollars

The Champion: ASCI White 
Most powerful computer as of February 2002
Capable of 12.3 trillion calculations/sec
- 74,000 times faster than Cray 1 (1976)
- 1,000 times faster than Deep Blue (1997)
Designed for complex 3-D simulations required for testing nuclear weapons
Powered by 8192 microprocessors
6 TB of memory; 160 TB of storage capacity

Mainframe Computers 

Also called “Enterprise Servers”
Designed for performing multiple, intensive tasks for multiple users simultaneously
Used by large businesses (e.g. banks, e-commerce sites), military, and industrial organizations
Designed for very-high reliability
Cost in millions of dollars

Servers/Minicomputers 

The name minicomputers used to define the class of computers that lies between personal computers and mainframes
Generally are more reliable than desktops, but not as solid as the mainframes
Costs in hundreds of thousands of dollars

Desktop Computers
Also called microcomputers
Low-end desktops are called PC’s and high-end ones “Workstations”

· PC’s are used for running productivity applications, Web surfing, messaging

· Workstations cost a few thousand dollars; PC around a $1000

Mobile Computers

Laptops, palmtops, and wearable computers are very capable computers but are light-weight and consume very little power

Laptops

also called notebook computers
generally weigh around 2kg
use special low-power processors
typically have 256MB memory,
40GB of storage
can work for more than 2 hours on battery.
Their usage is similar to that of PCs
They cost in the range of $1500-2500

Palmtops, 

also known as PDA’s - Personal Digital Assistants
Weigh less than a pound
have very low-power processors
KB’s of memory
MB’s of storage capacity
Can run for many hours on AA batteries
Used as an electronic version of a pocket diary
Also for Web surfing and e-mail or even as mobile phones
Palmtops cost $200-600

Wearables 

are small in size
carried in a pocket
worn on the arm, waist
or head or elsewhere on the body
Capability similar to PDA’s
but more expensive
They are always ON, and always accessible. That is, the user can always enter and execute commands, even while walking around or doing other activities
Each soldier of the future will be fitted with one

Ranking w.r.t. installed number 

PC’s
PDA’s
Workstations
Servers
Wearables (will take the top spot in future)
Mainframes
Supercomputers

Essential Hardware Components

At the highest level, two things are required for computing

Hardware: The physical equipment in a computing environment such as the computer and its peripheral devices (printers, speakers, etc.)

Software: The set of instructions that operates various parts of the hardware. Also termed as “computer program
All computers have the following essential hardware components:


Input

The devices used to give the computer data or commands are called Input devices. Includes keyboard, mouse, scanner, etc

Processor

A processor is the logic circuitry that responds to and processes the basic instructions that drive a computer.

Memory

Memory is the electronic holding place for instructions and data that your computer's microprocessor can reach quickly.

Storage

Computer storage is the holding of data in an electromagnetic form for access by a computer processor.

Output

The devices to which the computer writes data are called Output devices

Input Devices

Mouse

A mouse is a small device that a computer user pushes across a desk surface in order to point to a place on a display screen and to select one or more actions to take from that position. Keyboard

On most computers, a keyboard is the primary text input device. A keyboard on a computer is almost identical to a keyboard on a typewriter.

Joystick

In computers, a joystick is a cursor control device used in computer games.

Digital Camera

A digital camera records and stores photographic images in digital form that can be fed to a computer as the impressions are recorded or stored in the camera for later loading into a computer or printer. Currently, Kodak, Canon, and several other companies make digital cameras.

Microphone

A device that converts sound waves into audio signals. These could be used for sound recording as well as voice chatting through internet.

Scanner

A scanner is a device that captures images from photographic prints, posters, magazine pages, and similar sources for computer editing and display.

CS101 SHORT NOTES PART 3

Recommended: CS101 Latest Solved MCQs

What is a Port?

On computer and telecommunication devices, a port(noun) is generally a specific place for being physically connected to some other device, usually with a socket and plug of some kind.

Many Types of Ports 

  • Parallel 
  • Serial 
  • SCSI 
  • USB 
  • Firewire 

Parallel

An interface on a computer that supports transmission of multiple bits at the same time; almost exclusively used for connecting a printer.

Serial

It is a general-purpose personal computer communications port in which 1 bit of information is transferred at a time.

SCSI

A port that's faster than the serial and parallel ports but slower and harder to configure than the newer USB port. Also know as the Small Computer System Interface.

USB

USB (Universal Serial Bus) is a plug-and-play hardware interface for peripherals such as the keyboard, mouse, joystick, scanner, printer and modem.

Firewire

FireWire is simply a really fast port that lets you connect computer peripherals and consumer electronics to your computer without the need to restart.


Processor
Pentium
Celeron
Athlon
PowerPC
StrongARM (PDA)
Crusoe (Laptops)
SPARC (Workstations)

Memory/Storage

RAM

RAM (random access memory) is the place in a computer where the operating system,

Punch cards

A card on which data can be recorded in the form of punched holes

ROM

ROM is "built-in" computer memory containing data that normally can only be read, not written to. Hard disk

Hard disk is a computer storage device which saves and retrieves the data when required. Floppy disk

A diskette is a random access, removable data storage medium that can be used with personal computers.

Tape


In computers, tape is an external storage medium, usually both readable and writable, can store data in the form of electromagnetic charges that can be read and also erased.

CD

A compact disc [sometimes spelled disk] (CD) is a small, portable, round medium for electronically recording, storing, and playing back audio, video, text, and other information in digital form.

DVD

DVD (digital versatile disc) is an optical disc technology that is expected to rapidly replace the CD-ROM disc (as well as the audio compact disc) over the next few years. The digital versatile disc (DVD) holds 4.7 gigabyte of information on one of its two sides, or enough for a 133-minute movie.

Classifying Memory/Storage 

Electronic (RAM, ROM)
Magnetic (HD, FD, Tape), optical (CD, DVD)
Volatile (RAM), non-volatile (HD)
Direct access (RAM, HD), serial access (Tape)
Read/write (HD, RAM), read-only (CD)

Output Devices 

Printer
Plotter
Speakers
Monitor

Modem is output as well as input device at the same time.

PC Parts 

Monitor
Keyboard
Mouse
Speaker/headphone
Microphone
CPU
Front buttons
Backside ports, fan, slots, cables

Inside CPU 

Power supply/fan & connectors
Motherboard
Bus
Edge connectors
Ports
Video card
Modem
Network card
Sound card
ROM
RAM
Slots
DIMM’s

The Processor Module 

The slot on the motherboard
The housing
Fan
Heat sink
Pins (256?), Transistors (10 million?)

HTML Page

HTML

Hyper Text Markup Language

<HTML>

<HEAD>

<TITLE>Virtual Study Solutions Home Page</TITLE>


</HEAD>


<BODY>


<H1>Virtual Study Solutions</H1>


<P><B>Adjunct Lecturer in Computer Science</B><BR>



<A HREF="http://www.vu.edu.pk/">Virtual University</A><BR>


Building 1, 3rd Floor, Aiwan-e-Iqbal, Lahore<BR>


+92 42 555 1212<BR>

<A HREF="mailto:altaf@vu.edu.pk">altaf@vu.edu.pk</A><BR></P>

<P>I teach the <A HREF="http://www.vu.edu.pk/cs101/">Introduction to Computing</A> course. </P>

</BODY>

</HTML>


Microprocessor

A microprocessor (abbreviated as µP or uP) is a computer processor on a microchip. It's sometimes called a logic chip. A microprocessor is designed to perform arithmetic and logic operations that make use of small number-holding areas called registers.


Integrated circuit
Commonly known as an IC or a chip
A tiny piece of Silicon that has several electronic parts on it

Components of integrated are
Devices
Transistors
Diodes
Resistors
Capacitors
Wires

And are made of the following materials

Silicon - semiconductor
Copper - conductor
Silicon Dioxide - insulator


A Microprocessor System
Microprocessors are powerful pieces of hardware, but not much useful on their own
A microcomputer is 1 example of a microprocessor system


Micro Controller
Micro-controllers are another type of microprocessor systems
They are generally not that powerful, cost a few dollars a piece, and are found embedded in video games, VCRs, microwave ovens, printers, autos, etc.

The Main Memory Bottleneck
Modern super-fast microprocessors can process a huge amount of data in a short duration
They require quick access to data to maximize their performance

On-Chip Cache Memory


That small amount of memory located on the same chip as the microprocessor is called On-Chip Cache Memory


Bus Interface Unit


The bus interface unit is the part of the processor that interfaces with the rest of the PC.


Instruction Decoder


The instruction decoder of a processor is a combinatorial circuit sometimes in the form of a read-only memory,


A decoder is a device which is the reverse, undoing the encoding so that the original information can be retrieved.

Microprocessor Building Blocks


Arithmetic & Logic Unit (ALU)


An arithmetic and logical unit (ALU) also known as“Integer Unit” is one of the core components of all central processing units.

Floating-Point Unit (FPU)


A floating point unit (FPU) is a part of a CPU specially designed to carry out operations on floating point numbers

Registers


A register is a device for storing data. It is a small amount of very fast computer memory used to speed the execution of computer programs by providing quick access to commonly used values.


Data registers are used to store integer numbers.


Address registers hold memory addresses and are used to access memory.


General Purpose registers can store both data and addresses.


Floating Point registers are used to store floating point numbers.


Constant registers hold read-only values (e.g zero or one).


Vector registers hold data for Single Instruction Multiple Data (SIMD) instructions.


Special Purpose registers which store internal CPU data like the stack pointer or processor status words.

Control Unit


A control unit is the part of a CPU or other device that directs its operation. The outputs of the unit control the activity of the rest of the device. A control unit can be thought of as a finite state machine. It is called the brain of computer microprocessor.

Instruction Set


The set of machine instructions that a microprocessor recognizes and can execute – the only language microprocessor knows

The 1st microprocessor : Intel 4004
Introduced 1971
2250 transistors
108 kHz, 60,000 ops/sec
16 pins
10-micron process
Cost: less than $100

Currently Popular Intel Pentium 4 (2.2GHz)
Introduced December 2001
55 million transistors
32-bit word size
2 ALU’s, each working at 4.4GHz
128-bit FPU
0.13 micron process
Targeted use: PC’s and low-end workstations
Cost: around $600


Moore’s Law
In 1965, one of the founders of Intel – Gordon Moore – predicted that the number of transistor on an IC (and therefore the capability of microprocessors) will double every year. Later he modified it to 18-months


Enhancing the capability of a microprocessor


The computing capability of a microprocessor can be enhanced in many different ways:
By increasing the clock frequency
By increasing the word-width
Improving the architecture

CS101 SHORT NOTES PART 4

Recommended: ENG101 FINAL TERM PAPER SUBJECTIVE

Binary

(Base 2) number system

Decimal


(Base 10) number system

Binary (Base 2) number system consists of just two digits 0,1


Decimal (Base 10) number system consists of ten symbols or digits 0,1,2,3,4,5,6,7,8,9

Other popular number systems

Octalbase = 8
8 symbols (0,1,2,3,4,5,6,7)

Hexadecimalbase = 16
16 symbols (0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F)

Why Binary?
Because this system is natural for digital computers

Bit stands for Binary Digit


Byte = 8 Bits

Decimal to Binary conversion

Check


1001011 = 1x20 + 1x21 + 0x22 + 1x23 + 0x24 + 0x25 + 1x26


= 1 + 2 + 0 + 8 + 0 + 0 + 64


= 75


Computer Software
The HW needs SW to be useful; the SW needs HW to be useful
When the user needs something done by the computer, he/she gives instructions in the form of SW to computer HW

Machine Language
Machine language, though readily understood by microprocessors, is very difficult to write in for human programmers

Language Translators
Human programmers write programs in a language that is easy to understand for them


Software Development
The SW development process involves many steps, and coding, that is typing the instructions in a high-level language is only a small part of that process – taking-up only around 15% of the effort


Two Major Types of Software
System SW
Programs that generally perform the background tasks in a computer. These programs, many times, talk directly to the HW
Application SW
Programs that generally interact with the user to perform work that is useful to the user. These programs generally talk to the HW through the assistance of system SW

System Software


Operating Systems
It interacts directly with the computer HW
Other SW normally does not directly interact with the HW, but through the OS


Examples:
Windows , Mac , OS , Linux , Unix , Solaris , DOS , CP/M , VMS


Firmware
Firmware consists of startup and a few low-level I/O routines that assist the computer in finding out and executing the rest of the OS
On IBM-compatible PC’s, it is called BIOS


Utilities
Computer programs that perform a particular function related to computer system management and maintenance


Examples:


1- Anti-virus SW
2- Data compression SW
3- Disk optimization SW
4- Disk backup SW

Language Translator

1- Compiler translates the program written in a HLL in one go.
2- nterpreter translates the HLL program one statement at time.


Device Drivers
A computer program that facilitates the communication between the computer and a peripheral device (e.g. printer, mouse, etc.)


Application Software

Application SW are programs that interact directly with the user for the performance of a certain type of work
Scientific/engineering/graphics SW
Mathematica; AutoCad; Corel Draw
Business SW
The billing system for the mobile phone company
Productivity SW
Word processors; Spreadsheets
Entertainment SW
Games
Educational SW
Electronic encyclopedias; The VU Web site


Another way of classifying Software
Shrink-Wrapped SW
-You can just go to a shop and buy it
Custom-built SW
-You cannot just go to a shop and buy it; you have to find someone who can develop it for you


Who Owns Software?
Generally, although a piece of SW that is being used by millions, it is not owned by any of them! Instead, it is owned by the maker of the SW

Three Main Types of Software Licenses
Proprietary – Most software on a Windows PC or a Macintosh belongs to this category
Freeware – Most software on a Linux PC belongs to that category
Shareware – the category which lies between the above two categories

Proprietary SW License
The user needs to pay the maker of the SW for buying a license that allows the user to use the SW

Types of Proprietary Licenses
Single-user license
Multi-user license
Concurrent-user license
Site license

Freeware SW License


Allows the user free use of the SW

Open-Source SW License
Some authors give away the machine code only, which is extremely difficult to modify, if at all!

Shareware SW License
Allows the user free use of the SW, but with a request that the user pay the author a small amount (US$10-50) if the user is satisfied with the SW

Trialware
The SW is usable for a short period only


Interactive Forms (1)
Without forms, a Web site is “read-only” – it just provides information to the user

Interactive Forms (2)
Can be simple or very complex
Are always placed between the <BODY> and </BODY> tags of a Web page

Interactive Forms (3)
Text fields
Check boxes
Buttons

Server-Side Scripts
Are programs that reside on Web servers
Receive info that a user enters in a form
Process that info and take appropriate action


Examples:


CGI scripts on Unix servers


ASP scripts on Windows servers

Application Software


Application software are programs that interact directly with the user


They generally do not talk directly to the hardware


Classification According to the Mode


Interactive-mode


The user runs the program on the computer and keeps on interacting with the computer while the program runs


Example: Word processor


Batch-mode


The user starts the program and the computer processes the provided data and produces results without any further intervention of from the user


Example: Payroll

Classification According to Application Area


Scientific/engineering/graphics


Business


Productivity


Entertainment


Educational









Scientific SW


Simulation of natural systems


Mathematical computation packages


MathCAD

Engineering SW


Computer-aided design (CAD)


AutoCAD


Telecommunication system SW

Graphics & Animation SW (1)


Two types:

1. Vector graphics


Treats everything that is drawn as an object


These objects can later be easily moved, stretched, duplicated, deleted, etc


Are resolution independent


Relatively small file size


Example: MS Visio, Corel Draw, Flash

Graphics & Animation SW (2)
2. Bit-mapped or raster graphics


Treats everything that is drawn as a bit-map


Example: MS Paint, Adobe Photoshop

Business Applications


Most of the SW being developed today belongs to this category


SW that is required to run most any sort of biz:


Payroll


General ledger


Order entry


Accounts receivable & accounts payable


Inventory control

E-Commerce Software


Reliability


Security


Ability to handle 1000’s of transactions, simultaneously


ERP (Enterprise Resource Planning) SW


Very large scale, complex & expensive SW


Example: SAP, Oracle, PeopleSoft, Baan

DSS (Decision Support Systems) SW


Sometimes also called “expert systems”


Many times are based on a branch of computer science called “artificial intelligence”

Productivity SW


Most popular category in terms of licenses sold


Word Processing -- Spreadsheets


Presentations -- Databases

Word Processors


Probably the most popular productivity app


Style sheets


Spelling & grammar checking

Web Page Development SW


Web pages can be developed using a simple plain-text editor like the “notepad”, but more efficient, easy-to-use HTML editors can make the process quicker

Spreadsheet SW (1)


Electronic replacement for ledgers Is used for automating engineering, scientific, but in majority of cases, business calculationsm.

Spreadsheet SW (2)


Consist of cells arranged in rows and columns

Presentation Development SW


Used to prepare multimedia material for lectures & presentations to display key points, graphics, animation, or video with the help of multimedia projectors

Small-Scale Databases SW (1)


Easy to use applications designed for efficient storage and fast and easy retrieval of data

Small-Scale Databases SW (2)


Before the advent of the currently popular “relational” database model, the data basing function was performed using what is called the “flat-file” model


A database consists of a file or a set of files. Information in these is stored in the form of records, and the records are further subdivided into fields

Productivity SW Suites


A set of stand-alone productivity applications designed to work easily with each other


Examples: MS Office, Corel WordPerfect Office

Document-Centered Computing (DCC)


The increasing cooperation among the apps included in productivity suites has given rise to a new computing model called DCC

Entertainment SW


Simple, intuitive, many times social UI’s

Music & Video Players


Music players (WinAmp)


Video/Music players (Real player, Windows Media player, QuickTime player)

Music Generation & Movie Editing SW


A PC can be made the hub of a music making studio with help of appropriate HW & SW


Inexpensive, easy-to-use video editing SW has recently become available for the iMac

Educational (especially for toddlers)


Sports

Educational SW
Electronic Encyclopedias


Great resource of useful information presented in a very interesting format

On-Line Learning


With time, the VU Web site will become more and more focused on interactive online learning


Interactive CD’s


Same as on-line learning, but through a CD instead of a Web site

Attributes of Good Application Software


Easy to install, un-install


User Interface


Configurable


Has a tutorial and a complete help manual

CS101 SHORT NOTES PART 5

RecommendedISL 201 Mid term SOlved Papers

Word Processing

The art and science of converting written information into a form that looks pleasing when printed


Word Processor
The tool used to perform word processing
Today, the term “word processor” generally means the SW used on a computer to perform the task of word processing


Uses of Word Processors
Write a letter
Address labels
Research paper or report
Advertisement
Newsletter
Magazines
Book
And thousands of other tasks

Desktop Publishing (DTP)
A combination of word processing and graphic design. Used to develop elegant documents


DTP: Requirements
High-end PC with a large-screen monitor
Laser printer
Scanner
DTP SW
Examples:
Adobe PageMaker
QuarkXPress
Corel Ventura
MS Publisher

Client Side Script


New Concept: Client-Side Scripts
Small programs that are a part of the Web page and run on the user’s (client’s) computer
They interact with the user to collect info or to accomplish other tasks
Once it has been collected, they may help pass the collected info on to a server-side script

Advantages of Client-Side Scripting
Reduced server load as it does not have to send messages to the user’s browser about missing or incorrect data


Disadvantages
Client-side scripts do not work with all browsers
Some user intentionally turn scripting off on their browsers

JavaScript

Why JavaScript?


JavaScript can be used (along with HTML) to develop interactive content for the Web


What is JavaScript?
A programming language specifically designed to work with Web browsers


· It is designed to be used for developing small programs – called scripts –

Definition of Algorithm


Sequence of steps that can be taken to solve a given problem is called Algorithm.

Examples:

Addition

Conversion from decimal to binary

The process of boiling an egg

The process of mailing a letter

Sorting

Searching

Origin of the Term “Algorithm”

The name derives from the title of a Latin book: Algoritmi de numero Indorum


That book was a translation of an Arabic book: Al-Khwarizmi Concerning the Hindu Art of Reckoning


That book was written by the famous 9-th century Muslim mathematician, Muhammad ibn Musa al-Khwarizmi

Al-Khwarzmi


Al-Khwarizmi lived in Baghdad, where he worked at the Dar al-Hikma


Dar al-Hikma acquired and translated books on science and philosophy, particularly those in Greek, as well as publishing original research


The word Algebra has its origins in the title of another Latin book which was a translation of yet another book written by Al-Khwarzmi:


Kitab al-Mukhtasar fi Hisab al-Jabr wa'l-Muqabala


Greedy Algorithm


An algorithm that always takes the best immediate, or local solution while finding an answer


Greedy algorithms may find the overall or globally optimal solution for some optimization problems

Deterministic Algorithm


An algorithm whose behavior can be completely predicted from the inputs


That is, each time a certain set of input is presented, the algorithm gives the same results as any other time the set of input is presented.

Randomized Algorithm

Any algorithm whose behavior is not only determined by the input, but also values produced by a random number generator

Heuristic


A procedure that usually, but not always, works or that gives nearly the right answer

The Brute Force Strategy


A strategy in which all possible combinations are examined and the best among them is selected

A Selection of Algorithmic Application Areas

Search


Sort


Cryptography


Parallel


Numeric


Graphical


Quantum computing


Combinatory

Syntax & Semantic

Flowchart


A graphical representation of a process (e.g. an algorithm), in which graphic objects are used to indicate the steps & decisions that are taken as the process moves along from start to finish

Algorithm Building Blocks


· Sequences


· Conditionals


· Loops

Strategy for Sorting


Repeat the following steps while the list is un-sorted:


Start with the first object in the list


Swap it with the one next to it if they are in the wrong order


Repeat the same with the next to the first object


Keep on repeating until you reach the last object in the list

Q: Is this the only possible algorithm for sorting a list?


A: Certainly not! In fact this one (called the “Bubble sort”) is probably the worst (reasonable) algorithm for sorting a list – it is just too slow

Some of things that JavaScript cannot do!
The following file ops. on the client computer:
-- Read -- Modify
-- Rename -- Delete
-- Create
Create graphics (although, it does have the ability to format pages through HTML - including the placement of graphics)


Some of the things that JavaScript can do!
Control the appearance of the browser
Control the content and appearance of the document displayed in the browser
Store & modify a limited amount of data about the user in the form of client-side “cookies”


Client-Side JavaScript


Although a version of JavaScript exists that can be used to write server-side scripts, our focus in this course will only be on client-side scripting
Case Sensitivity
HTML is not case sensitive. The following mean the same to the browser:
<HTML> -- <html>
<Html> -- <htMl>
JavaScript is case sensitive. Only the first of the following will result in the desired function – the rest will generate an error or some other undesirable event:
onMouseClick -- OnMouseClick
onmouseclick -- ONMOUSECLICK


JavaScript is Object-Based
Everything that JavaScript manipulates, it treats as an object – e.g. a window or a button

Not Object-Oriented!
JavaScript is not a true object-oriented language like C++ or Java
It is so because it lacks two key features:
-- A formal inheritance mechanism
-- Strong typing


Types of Objects
JavaScript objects
-- Objects that are part of JavaScript
-- Examples: window, document
Browser objects
-- Objects that contain info not about the contents of the display, but the browser itself
-- Examples: history, navigator
User-defined object

Event Handlers
“Events” are actions that occur as a result of user’s interaction with the browser
We use “event handlers” [e.g. onMouseOver(), onClick()] to design Web pages that can react to those events


1. Batch Programs

2. Event-Driven Programs

Batch Programs

These are typically started from a shell (or automatically via a scheduler) and tend to follow a pattern of:
Initialize internal data
Read input data
Process that data
Print or store results

Event-Driven ProgramsExamples:

GUIs, microwave, camera
The system sends events to the program and the program responds to these as they arrive.

Programming Language

A vocabulary and set of grammatical rules for instructing a computer to perform specific tasks
All programs consists of:

Sequence of instructions
Conditionals
Loops

These may contain:
Data
Input/output (print, etc)
Operations (add, divide, etc)
Examples of Prog. Languages

Types of Prog. Languages

High level Programming Languages
Low Level Programming Languages

High-level programming languages, while simple compared to human languages, are more complex than the languages the uP actually understands,
Assembly languages are similar to machine languages, but are easier to program in as they allow a programmer to substitute names for numbers

Machine languages consist of numbers

Interpreters: immediate response, but execute code slowly.

Compilers: Takes longer to compile, but super-fast execution.

Programming SW Development

SW Design Methodology ?

The set of (often flexible) rules and guidelines a team of developers follow to construct reasonably complex SW systems
Object Oriented Design
Structured Design

CS101 SHORT NOTES PART 6

Recommended: Mth301 midterm Solved past papers

Object-Oriented Languages

Programming languages specifically designed to make it easy to implement object-oriented designs

Examples: Smalltalk, C++, Java

Variables

Variables give us the ability to manipulate data through reference instead of actual value.

Variables are names assigned to values.

Identifiers

Identifiers are names used by JavaScript to refer to variables (as well as objects, properties, methods, and functions!). An identifier must begin with an alphabetical character (a-z or A-Z) or the underscore “_” character.

Download CS101 Short Notes for Mid Term from lec 1 to 22

CS10-Short-Notes-from-Lecture No.01 to Lecture No. 22.pdf, 693 KB


If You liked this Post Please share it with your friends. 
Don't forget to subscribe below to get our future updates in your mail box. Thank You.

CS201 Solved Short Notes 2017

By: // No comments:

CS201 Solved Short Notes

Here we have CS201 Solved Short Notes Collection for mid term exam for spring 2017. Previously we shared CS 201 all past solved midterm papers 2015.

You Can Also Download CS201 Solved Mid Term Papers, CS201 Short Notes, CS201 Assignment Solutions, CS201 Lecture Wise Questions Answers Files, CS201 Solved MCQs, Solved Quiz , CS201 Subjective Papers , CS201 Objective Papers from Virtual Study Solutions For Preparation of Mid Term Papers.

CS201 Solved Short Notes Collection

Question No: 1
Write a declaration statement for an array of 10 elements of type float. Include an initialization statement of the first four elements to 1.0, 2.0, 3.0 and 4.0.
Answer:
float floatArry[10] = {1.0,2.0,3.0,4.0};
Question No: 2

Write the general syntax for the declaration of pre-increment and post-increment member operator function.
Answer:
Classname operator ++(); —- pre increment
Classname operator ++(int) —- post increment
Question No: 3
Give the general syntax of class template.
Answer:
template
class myclass { —} ;

Recommended : CS201- midterm solved mcqs - Introduction to Programming

Question No: 4
What is a truth Table?
Answer:
There are some areas where the decision structures become very complicated. Sometimes, we find it difficult to evaluate a complicated logical expression. Sometimes the logic becomes extremely complicated so that even writing it as a simple syntax statement in any language. It becomes complicated to determine what will be evaluated in what way. We know the concept of truth table. The truth tables are very important. These are still a tool available for analyzing logical expressions. We will read logic design in future, which is actually to do with chips and gates. How we put these things together.
Question No: 5
What will be the output of following code, if user input a number 123?
int input ;
cin >> oct >> input;
cout hex input ;
Answer:
53 Rational: it will take 123 as octal and print it in hex form which is 53.
Question No: 6
What is principle of friendship in the context of functions and classes?
Answer:
Class can declare a friend function and someone from outside the class cannot declare itself friend of a class.
A friend function can access the private variables of class just like a member function

Question No: 7
How many arguments a Unary Operator take? Can we make a binary operator as unary operator?
Answer:
Unary operator takes only one argument like i++ or i— (Post increment or post decrement operators for integers) or ++i,–i (Pre increment or pre decrement operators for integers) ,we can not make Unary operator as binary or binary as Unary operator.
Question No: 8

Which arithmetic operators cannot have a floating point operand?

Answer:
Modulus operator:
This operator can only be used with integer operands ONLY

Question No: 9

What are manipulators? Give one example.

Answer:
The manipulators are like something that can be inserted into stream, effecting a change in the behavior. For example, if we have a floating point number, say pi (л), and have written it as float pi = 3.1415926 ; Now there is need of printing the value of pi up to two decimal places i.e. 3.14. This is a formatting functionality. For this, we have a manipulator that tells about width and number of decimal points of a number being printed.

Question No: 10

Write down piece of code that will declare a matrix of 3×3. And initialize all its locations with 0;

Answer:
int matrix [3] [3] ;

include

main () {
int matrix [3][3];
int inivalue = 0;

for (int a=0;a<3;a++)
{ for (int b = 0;b<3;b++)
{ matrix[a][b]= inivalue;
cout/p>
}
If You still have any question in mind let us know in comments.

ECO403 Solved Quiz and Short Notes for Mid Term

By: // No comments:

ECO403 Short Notes and Solved Quiz

Here we have ECO403 complete Solved Quiz and Short Notes for Mid Term exam. You Can Also Download ECO403 Mid Term Papers, ECO403 Short Notes, ECO403 Assignment Solutions, Lecture Wise Questions Answers Files, ECO403 Solved MCQs, ECO403 Solved Quiz , ECO403 Solved Mid Term Subjective Papers ,ECO403  Solved Mid Term Objective Papers from Virtual Study Solutions For Preparation of Mid Term Papers.

Also Read: MGT501 Current And Past Mid Term Papers

ECO403 Short Notes

Actual budget:

The amount spent by the Federal government (to purchase goods and services and for transfer payments) less the amount of tax revenues collected by it in any fiscal year; and which can not reliably used to determine whether it is pursuing an expansionary or fiscal policy.
Actual deficit :
The size of federal government’s budget deficit actually measured or recorded in any given year.
Actual investment :
The amount which business firms do invest: equal to planned investment plus unplanned investment.
Actual reserves :
The funds which a member bank has on deposit at the Federal Reserve Bank of its district.

Also Read: ISL 201 Mid term SOlved Papers

Adaptive expectation theory :
The idea that people determine their expectations about future events (e.g. inflation) on the basis of
past and present events (rates of inflation) and only change their expectations as events unfolds.
Aggregate demand :
A schedule or curve which shows the total quantity of goods and services demanded (purchased) at
different price levels.
Aggregate supply :
A schedule or curve showing the total quantity of goods and services supplied (produced) at different
price level.

Also Read: CS 201 all past solved midterm papers 2015

Anticipated inflation :
Inflation at a rate equal to the rate expected in that period of time
Asset demand for money :
The amount of money people want to hold as a store of value (the amount of their financial assets
they wish to have in the form of money); and which varies inversely with the rate of interest.
Average propensity to consume :
Fraction of disposable income which households spend for consumer goods and services;
consumption divided by disposable income.
Average propensity to save :
Fraction of disposable income which household save; saving divided by disposable income.

Also Read: CS101 Mid term 16 SOlved Papers + Quizzes + Solved Subjectives + HTML TAGS

Download ECO403 Short Notes and Quiz Mega File:

CS302 Short Notes for Final term Preparation

By: // No comments:

CS302 Short Notes for Final term

Question: How can a D flip-flop can be made to toggle? 
Answer: A D flip-flop can be made to toggle by connecting Q' to D. 

Question: What is the difference between a counter and shift register ?
 Answer: A counter has a specified sequence of states, but a shift register does not.

Also Read: CS101 Final Term Past Paper Collection - 1
Question: How many outputs and inputs GAL22V10 have? 
Answer: The GAL22V10 has 22 inputs and 10 outputs. 

Question: What is an equivalent representation for the Boolean expression A' + 1 ? 
Answer: From the Boolean property A + 1 = 1, let A = A'.

Also Read: CS201 Latest Solved MCQs For Final Term Papers
Question: What is K-map and why we used it? 
Answer: A Karnaugh map provides a pictorial method of grouping together expressions with common factors and therefore eliminating unwanted variables. The Karnaugh map can also be described as a special arrangement of a truth  table. 

Question: Each stage in a shift register represents how much storage capacity? 
Answer: one bit 

Also Read: Write ALLAH Using C++ Program
Question: what are PLD's?How are the classified. 
Answer: The programmable logic devices (PLD's) are used in a lot of applications, and replace SSI and MSI circuits, due the space saving and reduce the number of devices in a certain design. 
A PLD is made of a matrix of AND and OR gates, that can be programmed to obtain certain logic functions. There are four types of devices that can be clasified as PLD's: 
a)The Programmable Read-Only Memory, PROM. 
b)The Programmable Logic Array , PLA. 
c)The Programmable Array Logic, PAL. 
d)The Generic Array Logic, GAL. 

Question: What are Flip-flops? 
Answer: The memory elements in a sequential circuit are called flip-flops. A flip-flop circuit has two outputs, one for the normal value and one for the complement value of the stored bit.

Also Read: CS402 Assignment no. 3 Solution Fall 2016
Question: If an S-R latch has a 0 on the S input and a 1 on the R input and then the R input goes to 0, then what the latch will be? 
Answer: The latch wil be in reset condition. 

CS101 short notes Complete Collection

By: // No comments:

CS101 short notes

Here You Can Download Short Notes, Lecture Wise Questions Answers Files, Solved MCQs, Solved Quizzes , Solved Mid Term Subjective Papers , Solved Mid Term Objective Papers From This Discussion For Preparation Mid Term/Final Term Papers.

You should also Read : CS101 Latest Solved MCQs

cs101 short notes Part 1

Charles Babbage (1791-1871)

·         Creator of the Analytical Engine - the first general-purpose digital computer (1833)
The Analytical Engine
·          A programmable, mechanical, digital machine
·         Could carryout any calculation
·         Could make decisions based upon the results of the previous calculation
·         Components: input; memory; processor; output

Ada, Countess of Lovelace(1815-52)

·         Babbage: the father of computing
·         Ada: the mother?
·         Wrote a program for computing the Bernoulli’s sequence on the Analytical Engine world’s 1st computer program
·          Ada: A programming language specifically designed by the US Dept of Defense for developing military applications was named Ada to honor her contributions towards computing

A lesson that we all can learn from Babbage’s Life

·          Charles Babbage had huge difficulties raising money to fund his research
·           As a last resort, he designed a clever mathematical scheme along with Ada, the Countess of Lovelace
·         It was designed to increase their odds while gambling.  They bet money on horse races to raise enough money to support their research experiments
·         Guess what happened at the end?  The lost every penny that they had.
1.    Fast
2.    Bored
3.    Storage

Here is a fact:

 In 1997 Deep Blue, a supercomputer designed by IBM, beat Gary Kasparov, the World Chess Champion
That computer was exceptionally fast, did not get tired or bored.  It just kept on analyzing the situation and kept on searching until it found the perfect move from its list of possible moves  …

The “Turing test”

A test proposed to determine if a computer has the ability to think. In 1950, Alan Turing (Turing, 1950) proposed a method for determining if machines can think. This method is known as The Turing Test.



Vacuum Tube – 1904

A vacuum tube is just that: a glass tube surrounding a vacuum (an area from which all gases has been removed). A British scientist named John A. Fleming made a vacuum tube known today as a diode. Then the diode was known as a "valve,"

ABC – 1939
The Atanasoff-Berry Computer was the world's first electronic digital computer. It was built by John Vincent Atanasoff and Clifford Berry at Iowa StateUniversity during 1937-42.

Harvard Mark 1 – 1943
Howard Aiken and Grace Hopper designed the MARK series of computers at Harvard University. clicking metal parts, 55 feet long and 8 feet high. The 5-ton device contained almost 760,000 separate pieces. Used by the US Navy for gunnery and ballistic calculations, the Mark I was in operation until 1959.
ENIAC – 1946
ENIAC (Electrical Numerical Integrator AndCalculator). The U.S. military sponsored their researchIt took the team about one year to design the ENIAC and 18 months and 500,000 tax dollars to build it. The ENIAC contained 17,468 vacuum tubes, along with 70,000 resistors and 10,000 capacitors.
Transistor
The first transistor was invented at Bell Laboratories on December 16, 1947 by William Shockley. Compared to vacuum tubes, it offered:
  • smaller size
  • better reliability
  • lower power consumption
  • lower cost
Floppy Disk – 1950:
Invented at the Imperial University inTokyo by Yoshiro Nakamats. 
UNIVAC 1 – 1951
The first commercially successful electronic computer, UNIVAC I, was also the first general purpose computer - designed to handle both numeric and textual information. It was designed by J. Presper Eckert and John Mauchly. 

Compiler – 1952
            Grace Murray Hopper an employee of Remington-Rand worked on the NUIVAC. She took up the concept of reusable software in her 1952 paper entitled "The Education of a Computer" and developed the first software that could translate symbols of higher computer languages into machine language. (Compiler)

ARPANET – 1969
            ARPA was assigned to research how to utilize their investment in computers via Command and Control Research (CCR). Dr. J.C.R. Licklider was chosen to head this effort. Developed for the US DoD Advanced Research Projects Agency

Intel 4004 – 1971

The 4004 was the world's first universal microprocessor.
Altair 8800 – 1975
Developers Edward Roberts, William Yates and Jim Bybee spent 1973-1974 to develop the MITS (Micro Instruments Telemetry Systems ) Altair 8800. The price was $375, contained 256 bytes of memory (not 256k),but had no keyboard, no display, and no auxiliary storage device.
Cray 1 – 1976  
The Cray 1 was the world's first "supercomputer," a machine that leapfrogged existing technology when it was introduced in 1971.
IBM PC – 1981
On August 12, 1981, IBM released their new computer, re-named the IBM PC. The "PC" stood for "personal computer" making IBM responsible for popularizing the term "PC".
The first IBM PC ran on a 4.77 MHz Intel 8088 microprocessor. The price tag started at $1,565, which would be nearly $4,000 today.
Apple Macintosh – 1984
Apple introduced the Macintosh to the nation onJanuary 22, 1984. The original Macintosh had 128 kilobytes of RAM, although this first model was simply called "Macintosh" until the 512K model came out in September 1984. The Macintosh retailed for $2495.

World Wide Web -1989
WWW quickly gained great popularity among Internet users.
What is World Wide Web?
·         A huge resource of information
·         Logically unified:  Any one from any where can access the information using a very simple scheme consisting of links & URLs
·         Physically distributed:  The information is stored on Internet-connected computers that are spread all over the globe
Browser
A browser is an application program that provides a way to look at and interact with all the information on the World Wide Web.

URL

URL (Uniform Resource Locator, previously Universal Resource Locator) – pronounced YU-AHR-EHL or, in some quarters, UHRL - is the address of a file (resource) accessible on the Internet.
How many Web pages are there?
  • In 1999 there were 800 million Web pages (15 terra (1012) bytes of text)
  • In year 2002, the number is supposed to be 8 billion
  • If you spend a minute reviewing each of these pages, it will take more than 15,000 years to go through them all
What is secret behind the explosive growth of the Web?
  • Anarchy – any page is allowed to link to any other
  • There are no controls over who puts what on the Web
    Everyone can put whatever they want to put on the Web – and they do!
The most popular Web sites?

       AOL – Most popular ISP’s Web site
  • Microsoft – Most popular software developer’s Web site
  • Yahoo – Most popular multi-service Web site
  • Amazon – most popular shop on the Web
  • CNN – most popular news Web site
  • Google – most useful search engine

CS101 short notes Part 2

What is a Web Site?
A Web site is a related collection of World Wide Web (WWW) files that includes a beginning file called a home page.
What is a Web Search Engine?
·         Search engines continuously scan the Web and compile a list of all the Web pages that they find
Internet & Web 
  • The “Internet” and the “Web” are not the same
  • In fact, the “Web” is a service that runs over the “Internet”. In addition to the Web, there are many other services that run over the Interne.
  • Internet is like the network of roads in a city, whereas Web is a service like the Bus Service that run over those roads. Just like other services can use the roads (e.g. wagons),
Info is available on Web
Information about almost every thing known to mankind and then some!
The info is in the form of:
 – Text
 – Graphics
 – Animation
 – Video
 – Sound
The Semantic Web
  • What unique feature distinguishes the Web of today with the Semantic Web of tomorrow?
  • Whereas, today’s Web’s content is designed for humans to read; the Semantic Web’s content will be designed for computers to understand meaningfully
  • However, the Semantic Web is not a replacement but an extension of the present Web, in which information is given well defined meaning
  • Some progress is already being made for adding “Semantic Content” on to the Web, but a lot more will happen in the next 5 years
Computer Types 
Computer types according to capability are
  • Supercomputers
  • Mainframes
  • Servers
  • Desktops
  • Portables
Supercomputers 
  • State-of-the-art machines designed to perform calculations as fast as the current technology allows
  • Used to solve extremely complex and large-scale problems: weather prediction, simulation of atomic explosions; aircraft design; movie animation
  • Cost tens of millions of dollars
The Champion: ASCI White
  •  Most powerful computer as of February 2002
  • Capable of 12.3 trillion calculations/sec
          - 74,000 times faster than Cray 1 (1976)
          - 1,000 times faster than Deep Blue (1997)
  • Designed for complex 3-D simulations required for testing nuclear weapons
  • Powered by 8192 microprocessors
  • 6 TB of memory; 160 TB of storage capacity
Mainframe Computers
  •  Also called “Enterprise Servers”
  • Designed for performing multiple, intensive tasks for multiple users simultaneously
  • Used by large businesses (e.g. banks, e-commerce sites), military, and industrial organizations
  • Designed for very-high reliability
  • Cost in millions of dollars
Servers/Minicomputers 
  • The name minicomputers used to define the class of computers that lies between personal computers and mainframes
  • Generally are more reliable than desktops, but not as solid as the mainframes
  • Costs in hundreds of thousands of dollars
Desktop Computers
  • Also called microcomputers
  • Low-end desktops are called PC’s and high-end ones “Workstations”
·         PC’s are used for running productivity applications, Web surfing, messaging
·         Workstations cost a few thousand dollars; PC around a $1000
Mobile Computers 
Laptops, palmtops, and wearable computers are very capable computers but are light-weight and consume very little power

Laptops
  • also called notebook computers
  • generally weigh around 2kg
  • use special low-power processors
  • typically have 256MB memory,
  • 40GB of storage
  • can work for more than 2 hours on battery.
  • Their usage is similar to that of PCs
    They cost in the range of $1500-2500
Palmtops,
  • also known as PDA’s - Personal Digital Assistants
    Weigh less than a pound
  • have very low-power processors
  • KB’s of memory
  • MB’s of storage capacity
  • Can run for many hours on AA batteries
  • Used as an electronic version of a pocket diary
  • Also for Web surfing and e-mail or even as mobile phones
  • Palmtops cost $200-600
Wearables
  • are small in size
  • carried in a pocket
  • worn on the arm, waist
  • or head or elsewhere on the body
  • Capability similar to PDA’s
  • but more expensive
  • They are always ON, and always accessible. That is, the user can always enter and execute commands, even while walking around or doing other activities
  • Each soldier of the future will be fitted with one
Ranking w.r.t. installed number
  •  PC’s
  • PDA’s
  • Workstations
  • Servers
  • Wearables (will take the top spot in future)
  • Mainframes
  • Supercomputers
Essential Hardware Components
At the highest level, two things are required for computing
Hardware: The physical equipment in a computing environment such as the computer and its peripheral devices (printers, speakers, etc.)

Software: 
The set of instructions that operates various parts of the hardware. Also termed as “computer program

All computers have the following essential hardware components:

Input
The devices used to give the computer data or commands are called Input devices. Includes keyboard, mouse, scanner, etc
Processor
A processor is the logic circuitry that responds to and processes the basic instructions that drive a computer.
Memory
Memory is the electronic holding place for instructions and data that your computer's microprocessor can reach quickly.
Storage
Computer storage is the holding of data in an electromagnetic form for access by a computer processor.
Output
The devices to which the computer writes data are called Output devices
Input Devices 
Mouse
A mouse is a small device that a computer user pushes across a desk surface in order to point to a place on a display screen and to select one or more actions to take from that position. Keyboard
On most computers, a keyboard is the primary text input device. A keyboard on a computer is almost identical to a keyboard on a typewriter.
Joystick
In computers, a joystick is a cursor control device used in computer games.
 Digital Camera
A digital camera records and stores photographic images in digital form that can be fed to a computer as the impressions are recorded or stored in the camera for later loading into a computer or printer. Currently, Kodak, Canon, and several other companies make digital cameras.

Microphone
A device that converts sound waves into audio signals. These could be used for sound recording as well as voice chatting through internet.
Scanner
A scanner is a device that captures images from photographic prints, posters, magazine pages, and similar sources for computer editing and display. 

CS101 short notes Part 3

What is a Port?
On computer and telecommunication devices, a port(noun) is generally a specific place for being physically connected to some other device, usually with a socket and plug of some kind.  
Many Types of Ports
  1. Parallel
  2. Serial
  3. SCSI
  4. USB
  5. Firewire
Parallel
An interface on a computer that supports transmission of multiple bits at the same time; almost exclusively used for connecting a printer.
Serial
It is a general-purpose personal computer communications port in which 1 bit of information is transferred at a time.
SCSI
A port that's faster than the serial and parallel ports but slower and harder to configure than the newer USB port. Also know as the Small Computer System Interface.
USB
USB (Universal Serial Bus) is a plug-and-play hardware interface for peripherals such as the keyboard, mouse, joystick, scanner, printer and modem.
Firewire
FireWire is simply a really fast port that lets you connect computer peripherals and consumer electronics to your computer without the need to restart.
Processor
  • Pentium
  • Celeron
  • Athlon
  • PowerPC
  • StrongARM (PDA)
  • Crusoe (Laptops)
  • SPARC (Workstations)
Memory/Storage 
RAM
RAM (random access memory) is the place in a computer where the operating system,
Punch cards
A card on which data can be recorded in the form of punched holes

ROM
ROM is "built-in" computer memory containing data that normally can only be read, not written to. Hard disk
Hard disk is a computer storage device which saves and retrieves the data when required. Floppy disk
A diskette is a random access, removable data storage medium that can be used with personal computers.
Tape
In computers, tape is an external storage medium, usually both readable and writable, can store data in the form of electromagnetic charges that can be read and also erased.
CD
A compact disc [sometimes spelled disk] (CD) is a small, portable, round medium for electronically recording, storing, and playing back audio, video, text, and other information in digital form.
DVD
DVD (digital versatile disc) is an optical disc technology that is expected to rapidly replace the CD-ROM disc (as well as the audio compact disc) over the next few years. The digital versatile disc (DVD) holds 4.7 gigabyte of information on one of its two sides, or enough for a 133-minute movie.
Classifying Memory/Storage
  • Electronic (RAM, ROM)
  • Magnetic (HD, FD, Tape), optical (CD, DVD)
  • Volatile (RAM), non-volatile (HD)
  • Direct access (RAM, HD), serial access (Tape)
  • Read/write (HD, RAM), read-only (CD)
Output Devices 
  •  Printer
  • Plotter
  • Speakers
  • Monitor
Modem is output as well as input device at the same time.
  • Monitor
  • Keyboard
  • Mouse
  • Speaker/headphone
  • Microphone
  • CPU
  • Front buttons
  • Backside ports, fan, slots, cables
Inside CPU
  • Power supply/fan & connectors
  • Motherboard
  • Bus
  • Edge connectors
  • Ports
  • Video card
  • Modem
  • Network card
  • Sound card
  • ROM
  • RAM
  • Slots
  • DIMM’s
The Processor Module 
  • The slot on the motherboard
  • The housing
  • Fan
  • Heat sink
  • Pins (256?), Transistors (10 million?)
HTML Page
HTML
Hyper Text Markup Language
<HTML>
<HEAD>
<TITLE>Altaf Khan's Home Page</TITLE>
</HEAD>
<BODY>

<H1>Altaf Khan</H1>

<P><B>Adjunct Lecturer in Computer Science</B><BR>

<A HREF="http://www.vu.edu.pk/">Virtual University</A><BR>
Building 1, 3rd Floor, Aiwan-e-Iqbal, Lahore<BR>
+92 42 555 1212<BR>

<A HREF="mailto:altaf@vu.edu.pk">altaf@vu.edu.pk</A><BR></P>

<P>I teach the <A HREF="http://www.vu.edu.pk/cs101/">Introduction to Computing</A> course. </P>
</BODY>
</HTML>

Microprocessor
A microprocessor (abbreviated as µP or uPis a computer processor on a microchip. It's sometimes called a logic chip. A microprocessor is designed to perform arithmetic and logic operations that make use of small number-holding areas called registers.
Integrated circuit
  • Commonly known as an IC or a chip
  • A tiny piece of Silicon that has several electronic parts on it
Components of integrated are
  • Devices
  • Transistors
  • Diodes
  • Resistors
  • Capacitors
  • Wires
     
And are made of the following materials
 

  • Silicon - semiconductor
  • Copper - conductor
  • Silicon Dioxide - insulator
A Microprocessor System
  • Microprocessors are powerful pieces of hardware, but not much useful on their own
  • A microcomputer is 1 example of a microprocessor system
Micro Controller
  • Micro-controllers are another type of microprocessor systems
  • They are generally not that powerful, cost a few dollars a piece, and are found embedded in video games, VCRs, microwave ovens, printers, autos, etc.
The Main Memory Bottleneck
  • Modern super-fast microprocessors can process a huge amount of data in a short duration
  • They require quick access to data to maximize their performance
On-Chip Cache Memory
That small amount of memory located on the same chip as the microprocessor is called On-Chip Cache Memory
Bus Interface Unit
The bus interface unit is the part of the processor that interfaces with the rest of the PC. 
Instruction Decoder
The instruction decoder of a processor is a combinatorial circuit sometimes in the form of a read-only memory,
 decoder is a device which is the reverse, undoing the encoding so that the original information can be retrieved.
Microprocessor Building Blocks
Arithmetic & Logic Unit (ALU)
An arithmetic and logical unit (ALU) also known as“Integer Unit” is one of the core components of all central processing units.


Floating-Point Unit (FPU)
floating point unit (FPU) is a part of a CPU specially designed to carry out operations on floating point numbers.

Registers
register is a device for storing data. It is a small amount of very fast computer memory used to speed the execution of computer programs by providing quick access to commonly used values.
Data registers are used to store integer numbers.
Address registers hold memory addresses and are used to access memory.
General Purpose registers can store both data and addresses.
Floating Point registers are used to store floating point numbers.
Constant registers hold read-only values (e.g zero or one).
Vector registers hold data for Single Instruction Multiple Data (SIMD) instructions.
Special Purpose registers which store internal CPU data like the stack pointer or processor status words.

Control Unit
control unit is the part of a CPU or other device that directs its operation. The outputs of the unit control the activity of the rest of the device. A control unit can be thought of as a finite state machine. It is called the brain of computer microprcessor.

Instruction Set
The set of machine instructions that a microprocessor recognizes and can execute – the only language microprocessor knows
The 1st microprocessor : Intel 4004
  • Introduced 1971
  • 2250 transistors
  • 108 kHz, 60,000 ops/sec
  • 16 pins
  • 10-micron process
  • Cost: less than $100
Currently Popular Intel Pentium 4 (2.2GHz)
  • Introduced December 2001
  • 55 million transistors
  • 32-bit word size
  • 2 ALU’s, each working at 4.4GHz
  • 128-bit FPU
  • 0.13 micron process
  • Targeted use: PC’s and low-end workstations
  • Cost: around $600
Moore’s Law
  • In 1965, one of the founders of Intel – Gordon Moore – predicted that the number of transistor on an IC (and therefore the capability of microprocessors) will double every year. Later he modified it to 18-months

Enhancing the capability of a microprocessor 

The computing capability of a microprocessor can be enhanced in many different ways:
  • By increasing the clock frequency
  • By increasing the word-width
  • Improving the architecture

CS101 short notes Part 4

Binary
(Base 2) number system
Decimal
(Base 10) number system

Binary (Base 2) number system consists of just two digits 0,1
Decimal (Base 10) number system consists of ten symbols or digits 0,1,2,3,4,5,6,7,8,9

Other popular number systems

Octalbase = 8
8 symbols (0,1,2,3,4,5,6,7)

Hexadecimal
base = 16
16 symbols (0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F)
Why Binary?
  • Because this system is natural for digital computers

Bit stands for Binary Digit
Byte = 8 Bits
Decimal to Binary conversion

Check 

1001011 =          1x20 + 1x21 + 0x22 + 1x23 + 0x24 + 0x25 + 1x26
             =          1 + 2 + 0 + 8 + 0 + 0 + 64
             =          75
Boolean Logic Operations 
We define the following logic operations or functions among the Boolean variables
Name
Example
Symbolically
NOT
y = NOT(x)
x´
AND
z = x AND y
· y
OR
z = x OR y
+ y
XOR
z = x XOR y
Å y
Truth Table of Logic FunctionA truth table defines the output of a logic function for all possible inputs 
Truth Table for the NOT Operation
(y true whenever x is false)
X
y = x´
0

1

 Truth Table for the NOT Operation
X
y = x´
0
1
1
0
Truth Table for the AND Operation
(z true when both x & y true                                         
X
y
z = x · y
0
0

0
1

1
0

1
1

  
Truth Table for the AND Operation
X
y
z = x · y
0
0
0
0
1
0
1
0
0
1
1
1

Truth Table for the OR Operation
(z true when x or y or both true)
x
y
z = x + y
0
0

0
1

1
0

1
1


Truth Table for the OR Operation
x
y
z = x + y
0
0
0
0
1
1
1
0
1
1
1
1
 Truth Table for the XOR Operation
(z true when x or y true, but not both)

X
y
z = x Å y
0
0

0
1

1
0

1
1



Truth Table for the XOR Operation
X
y
z = x Å y
0
0
0
0
1
1
1
0
1
1
1
0

General Structure of HTML tags 
Single tag

<tagName>
Example:     <BR>

Single Tags with Attributes

<tagName attributes>
Example:     <HR width=“50%”>

Paired Tags

<tagName> … </tagName>
Example:      <H1> … </H1>

 Paired Tags with Attributes

<tagName attributes > … </tagName>
Example: <H1 align=“center”> … </H1>
Code for the List and Table
<UL>
<LI>SimCity</LI>   
<LI>Quake</LI>                   
<LI>Bridge</LI>
</UL>



<TABLE border = “1” >
<TR>
<TH>Indoor</TH>
<TH>Outdoor</TH>
</TR>
<TR>
<TD>Squash</TD>
<TD>Cricket</TD>
</TR>
</TABLE>

Lists
HTML code
Browser Display
<UL>
  <LI>SimCity</LI>
   <LI>Quake</LI>
   <LI>Bridge</LI>
</UL>
  • SimCity
  • Quake
  • Bridge

<UL>
Un-ordered List
<LI>
Line items
The default “bullet” for these lists is a “disc”

That, however, can be changed to a “circle” or a “square” with the help of the type attribute

HTML code
Browser Display
<UL type="circle">
  <LI>SimCity</LI>
   <LI>Quake</LI>
   <LI>Bridge</LI>
</UL>
  • SimCity
  • Quake
  • Bridge

HTML code
Browser Display
<UL type="square">
  <LI>SimCity</LI>
   <LI>Quake</LI>
   <LI>Bridge</LI>
</UL>
  • SimCity
  • Quake
  • Bridge

Q: What happens if I start a new list without closing the original one?

HTML code
Browser Display
<UL>
<LI>SimCity</LI>
<LI>Quake II</LI>

<UL>
<LI>SimCity 3000</LI>
<LI>Quake III</LI>
</UL>

<LI>Bridge</LI>
</UL>

 
  • SimCity
  • Quake II
    • SimCity 3000
    • Quake III
  • Bridge

Such structures, i.e., those in which another starts before the first list is finished, are called Nested Lists
Types of Lists
In addition to un-ordered lists, HTML supports two other types
  • Ordered Lists
  • Definition List
Ordered List

Ordered List
Browser Display
<OL>
<LI>SimCity</LI>
<LI>Quake</LI>
<LI>Bridge</LI>
</OL>
    1. SimCity
  1. Quake
  2. Bridge

Ordered List
Browser Display
<OL type = “a”>
<LI>SimCity</LI>
<LI>Quake</LI>
<LI>Bridge</LI>
</OL>
    1. SimCity
  1. Quake
  2. Bridge
Ordered List Types 
Type
Result
“A”
A, B, C, …
“a”
a, b, c, …
“I”
I, II, III, IV, …
“i”
i, ii, iii, iv, …
“1”
1, 2, 3, …

Q: How would one start an ordered list with something other than 1

Ordered List
Browser Display
<OL start = 25>
<LI>SimCity</LI>
<LI>Quake</LI>
<LI>Bridge</LI>
</OL>
  1. SimCity
  2. Quake
  3. Bridge
Definition List 
Definition List
Browser Display
<DL>
<DT>SimCity</DT>
<DD>A great simulation game in which one build cities
</DD>
<DT>Quake</DT>
<DD> One of the best of the shoot-em-up genre </DD>
</DL>
SimCity
A great simulation game in which one build cities
Quake
One of the best of the shoot-em-up genre

<DL>
Definition List
<DT>
Term
<DD>
Definition
Ordered lists as well as definition lists can be nested just like the un-ordered lists
Can any type of list be nested into any other type?

  • Lists are one way of presenting data in a an ordered or formal fashion
  • Tables provide another - more customizable - way of displaying ordered information on Web pages

Tables

HTML code
Browser Display
<TABLE border = "1" >
<TR>
<TH>Indoor</TH>
<TH>Outdoor</TH>
</TR>
<TR>
<TD>Squash</TD>
<TD>Cricket</TD>
</TR>
</TABLE>
Indoor
Outdoor
Squash
Cricket

<TABLE>
Table
(made up of rows)
<TR>
Row
(made up of data cells)
<TH>
Heading Data Cell
(Can contain paragraphs, images, lists, forms, tables)
<TD>
Data Cell
(Can contain paragraphs, images, lists, forms, tables)
<TABLE> Attributes
  • BORDER
    Determines the thickness of the table border
    Example: <TABLE BORDER = “2”>
  • CELLPADING
    Determines the distance between the border of a cell and the contents of the cell
    Example: <TABLE CELLPADDING = “3”>
  • CELLSPACING
    Determines the empty spacing between the borders of two adjacent cells
    Example: <TABLE CELLSPACING = “1”>
HTML code
Browser Display
<TABLE border = "1" >
<TR>
<TH>Indoor</TH>
<TH>Outdoor</TH>
</TR>
<TR>
<TD>Squash</TD>
<TD>Cricket</TD>
</TR>
</TABLE>
Indoor
Outdoor
Squash
Cricket

HTML code
Browser Display
<TABLE >
<TR>
<TH>Indoor</TH>
<TH>Outdoor</TH>
</TR>
<TR>
<TD>Squash</TD>
<TD>Cricket</TD>
</TR>
</TABLE>
Indoor
Outdoor
Squash
Cricket

HTML code
Browser Display
<TABLE border=“1” >
<TR>
<TH colspan=“2”> Indoor Outdoor
</TH>
</TR>
<TR>
<TD>Squash</TD>
<TD>Cricket</TD>
</TR>
</TABLE>
Indoor Outdoor
Squash
Cricket

HTML code
Browser Display
<TABLE border = "1" >
<CAPTION>
My favorite sports
</CAPTION>
<TR>
<TD>Squash</TD>
<TD>Cricket</TD>
</TR>
</TABLE>
My favorite sports
Squash
Cricket
Squash
Cricket

Computer Software
  •  The HW needs SW to be useful; the SW needs HW to be useful
  • When the user needs something done by the computer, he/she gives instructions in the form of SW to computer HW
Machine Language 
  • Machine language, though readily understood by microprocessors, is very difficult to write in for human programmers
Language Translators 
  •  Human programmers write programs in a language that is easy to understand for them
Software Development
  • The SW development process involves many steps, and coding, that is typing the instructions in a high-level language is only a small part of that process – taking-up only around 15% of the effort

Two Major Types of Software 

  • System SW
    Programs that generally perform the background tasks in a computer. These programs, many times, talk directly to the HW
  • Application SW
    Programs that generally interact with the user to perform work that is useful to the user. These programs generally talk to the HW through the assistance of system SW
System Software
Operating Systems
  • It interacts directly with the computer HW
  • Other SW normally does not directly interact with the HW, but through the OS
Examples:
       Windows ,  Mac , OS , Linux , Unix , Solaris , DOS , CP/M  , VMS
Firmware
  • Firmware consists of startup and a few low-level I/O routines that assist the computer in finding out and executing the rest of the OS
  • On IBM-compatible PC’s, it is called BIOS
Utilities
  • Computer programs that perform a particular function related to computer system management and maintenance
Examples:
             1- Anti-virus SW
             2- Data compression SW
             3- Disk optimization SW
             4- Disk backup SW

Language Translator

      1-  Compiler translates the program written in a HLL in one go.
      2-  nterpreter translates the HLL program one statement at time.
Device Drivers
  • A computer program that facilitates the communication between the computer and a peripheral device (e.g. printer, mouse, etc.)
Application Software
Application SW are programs that interact directly with the user for the performance of a certain type of work
  • Scientific/engineering/graphics SW
    Mathematica
    ; AutoCad; Corel Draw
  • Business SW
    The billing system for the mobile phone company
  • Productivity SW
    Word processors; Spreadsheets
  • Entertainment SW
    Games
  • Educational SW
    Electronic encyclopedias; The VU Web site

Another way of classifying Software

  • Shrink-Wrapped SW
       -You can just go to a shop and buy it
  • Custom-built SW
       -You cannot just go to a shop and buy it; you have to find someone who can develop it for you
Who Owns Software?
  • Generally, although a piece of SW that is being used by millions, it is not owned by any of them! Instead, it is owned by the maker of the SW
Three Main Types of Software Licenses 
  1. Proprietary – Most software on a Windows PC or a Macintosh belongs to this category
  2. Freeware – Most software on a Linux PC belongs to that category
  3. Shareware – the category which lies between the above two categories
Proprietary SW License
  • The user needs to pay the maker of the SW for buying a license that allows the user to use the SW
Types of Proprietary Licenses
  • Single-user license
  • Multi-user license
  • Concurrent-user license
  • Site license
Freeware SW License
Allows the user free use of the SW
Open-Source SW License
  • Some authors give away the machine code only, which is extremely difficult to modify, if at all!
Shareware SW License
  • Allows the user free use of the SW, but with a request that the user pay the author a small amount (US$10-50) if the user is satisfied with the SW
Trialware
  • The SW is usable for a short period only

Interactive Forms (1)
  • Without forms, a Web site is “read-only” – it just provides information to the user
Interactive Forms (2)
  • Can be simple or very complex
  • Are always placed between the <BODY> and </BODY> tags of a Web page
Interactive Forms (3)
  • Text fields
  • Check boxes
  • Buttons
Server-Side Scripts
  • Are programs that reside on Web servers
  • Receive info that a user enters in a form
  • Process that info and take appropriate action
Examples:
CGI scripts on Unix servers
ASP scripts on Windows servers
Application Software
Application software are programs that interact directly with the user
They generally do not talk directly to the hardware


Classification According to the Mode
Interactive-mode
The user runs the program on the computer and keeps on interacting with the computer while the program runs
Example:  Word processor
Batch-mode
The user starts the program and the computer processes the provided data and produces results without any further intervention of from the user
Example: Payroll
Classification According to Application Area
Scientific/engineering/graphics
Business
Productivity
Entertainment
Educational


Scientific SW
Simulation of natural systems
Mathematical computation packages
MathCAD
Engineering SW
Computer-aided design (CAD)
AutoCAD
Telecommunication system SW
Graphics & Animation SW (1)
Two types:
1. Vector graphics
Treats everything that is drawn as an object
These objects can later be easily moved, stretched, duplicated, deleted, etc
Are resolution independent
Relatively small file size
Example: MS Visio, Corel Draw, Flash
Graphics & Animation SW (2)
2. Bit-mapped or raster graphics

Treats everything that is drawn as a bit-map
Example:  MS Paint, Adobe Photoshop

Business Applications
Most of the SW being developed today belongs to this category
SW that is required to run most any sort of biz:
Payroll
General ledger
Order entry
Accounts receivable & accounts payable
Inventory control
E-Commerce Software
Reliability
Security
Ability to handle 1000’s of transactions, simultaneously

ERP (Enterprise Resource Planning) SW

Very large scale, complex & expensive SW
Example:  SAP, Oracle, PeopleSoft, Baan
DSS (Decision Support Systems) SW
Sometimes also called “expert systems”
Many times are based on a branch of computer science called “artificial intelligence”
Productivity SW
Most popular category in terms of licenses sold
Word Processing                       -- Spreadsheets
Presentations                 -- Databases
Word Processors
Probably the most popular productivity app
Style sheets
Spelling & grammar checking
Web Page Development SW
Web pages can be developed using a simple plain-text editor like the “notepad”, but more efficient, easy-to-use HTML editors can make the process quicker
Spreadsheet SW (1)
Electronic replacement for ledgers Is used for automating engineering, scientific, but in majority of cases, business calculationsm.
Spreadsheet SW (2)
Consist of cells arranged in rows and columns
Presentation Development SW
Used to prepare multimedia material for lectures & presentations to display key points, graphics, animation, or video with the help of multimedia projectors
Small-Scale Databases SW (1)
Easy to use applications designed for efficient storage and fast and easy retrieval of data

Small-Scale Databases SW (2)
Before the advent of the currently popular “relational” database model, the data basing function was performed using what is called the “flat-file” model
A database consists of a file or a set of files.  Information in these is stored in the form of records, and the records are further subdivided into fields
Productivity SW Suites
A set of stand-alone productivity applications designed to work easily with each other
Examples:  MS Office, Corel WordPerfect Office
Document-Centered Computing (DCC) 
The increasing cooperation among the apps included in productivity suites has given rise to a new computing model called DCC
Entertainment SW
Simple, intuitive, many times social UI’s
Music & Video Players
Music players (WinAmp)
Video/Music players (Real player, Windows Media player, QuickTime player)
Music Generation & Movie Editing SW
A PC can be made the hub of a music making studio with help of appropriate HW & SW
Inexpensive, easy-to-use video editing SW has recently become available for the iMac
Games
Educational (especially for toddlers)
Sports
Educational SW
Electronic Encyclopedias

Great resource of useful information presented in a very interesting format
On-Line Learning
With time, the VU Web site will become more and more focused on interactive online learning

Interactive CD’s

Same as on-line learning, but through a CD instead of a Web site
Attributes of Good Application Software
Easy to install, un-install
User Interface
Configurable
Has a tutorial and a complete help manual

CS101 short notes Part 5

Word Processing 
The art and science of converting written information into a form that looks pleasing when printed
Word Processor
  • The tool used to perform word processing
  • Today, the term “word processor” generally means the SW used on a computer to perform the task of word processing
Uses of Word Processors
  • Write a letter
  • Address labels
  • Research paper or report
  • Advertisement
  • Newsletter
  • Magazines
  • Book
  • And thousands of other tasks
Desktop Publishing (DTP)
  • A combination of word processing and graphic design. Used to develop elegant documents
 DTP: Requirements
  • High-end PC with a large-screen monitor
  • Laser printer
  • Scanner
  • DTP SW
  • Examples:
  • Adobe PageMaker
  • QuarkXPress
  • Corel Ventura
  • MS Publisher

Client Side Script 
New Concept: Client-Side Scripts
  • Small programs that are a part of the Web page and run on the user’s (client’s) computer
  • They interact with the user to collect info or to accomplish other tasks
  • Once it has been collected, they may help pass the collected info on to a server-side script

Advantages of Client-Side Scripting
  • Reduced server load as it does not have to send messages to the user’s browser about missing or incorrect data
Disadvantages
  • Client-side scripts do not work with all browsers
  • Some user intentionally turn scripting off on their browsers

JavaScript

Why JavaScript? 
JavaScript can be used (along with HTML) to develop interactive content for the Web
What is JavaScript?
  • A programming language specifically designed to work with Web browsers
·         It is designed to be used for developing small programs – called scripts –
Definition of Algorithm
Sequence of steps that can be taken to solve a given problem is called Algorithm.

Examples:

Addition
Conversion from decimal to binary
The process of boiling an egg
The process of mailing a letter
Sorting
Searching
Origin of the Term “Algorithm”
The name derives from the title of a Latin book: Algoritmi de numero Indorum
That book was a translation of an Arabic book: Al-Khwarizmi Concerning the Hindu Art of Reckoning
That book was written by the famous 9-th century Muslim mathematician, Muhammad ibn Musa al-Khwarizmi
Al-Khwarzmi
Al-Khwarizmi lived in Baghdad, where he worked at the Dar al-Hikma
Dar al-Hikma acquired and translated books on science and philosophy, particularly those in Greek, as well as publishing original research
The word Algebra has its origins in the title of another Latin book which was a translation of yet another book written by Al-Khwarzmi:
            Kitab al-Mukhtasar fi Hisab al-Jabr wa'l-Muqabala

Greedy Algorithm
An algorithm that always takes the best immediate, or local solution while finding an answer
Greedy algorithms may find the overall or globally optimal solution for some optimization problems

Deterministic Algorithm
An algorithm whose behavior can be completely predicted from the inputs
That is, each time a certain set of input is presented, the algorithm gives the same results as any other time the set of input is presented.
Randomized Algorithm
Any algorithm whose behavior is not only determined by the input, but also values produced by a random number generator
Heuristic
A procedure that usually, but not always, works or that gives nearly the right answer
The Brute Force Strategy
A strategy in which all possible combinations are examined and the best among them is selected
A Selection of Algorithmic Application Areas
Search
Sort
Cryptography
Parallel
Numeric
Graphical
Quantum computing
Combinatory
Syntax & Semantic

Flowchart
A graphical representation of a process (e.g. an algorithm), in which graphic objects are used to indicate the steps & decisions that are taken as the process moves along from start to finish

Algorithm Building Blocks
·         Sequences
·         Conditionals
·         Loops
Strategy for Sorting
Repeat the following steps while the list is un-sorted:
Start with the first object in the list
Swap it with the one next to it if they are in the wrong order
Repeat the same with the next to the first object
Keep on repeating until you reach the last object in the list


Q:  Is this the only possible algorithm for sorting a list?
A:  Certainly not! In fact this one (called the “Bubble sort”) is probably the worst (reasonable) algorithm for sorting a list – it is just too slow

Some of things that JavaScript cannot do!
  • The following file ops. on the client computer:
       -- Read                     -- Modify
      -- Rename                 -- Delete
      -- Create
  • Create graphics (although, it does have the ability to format pages through HTML - including the placement of graphics)
Some of the things that JavaScript can do!
  • Control the appearance of the browser
  • Control the content and appearance of the document displayed in the browser
  • Store & modify a limited amount of data about the user in the form of client-side “cookies”
Client-Side JavaScript
Although a version of JavaScript exists that can be used to write server-side scripts, our focus in this course will only be on client-side scripting
Case Sensitivity
  • HTML is not case sensitive. The following mean the same to the browser:
    <HTML> -- <html>
    <Html> -- <htMl>
  • JavaScript is case sensitive. Only the first of the following will result in the desired function – the rest will generate an error or some other undesirable event:
    onMouseClick -- OnMouseClick
    onmouseclick -- ONMOUSECLICK
JavaScript is Object-Based
  • Everything that JavaScript manipulates, it treats as an object – e.g. a window or a button
Not Object-Oriented!
  • JavaScript is not a true object-oriented language like C++ or Java
  • It is so because it lacks two key features:
       -- A formal inheritance mechanism
       -- Strong typing
Types of Objects
  • JavaScript objects
       -- Objects that are part of JavaScript
       -- Examples: window, document
  • Browser objects
       -- Objects that contain info not about the contents of the display, but the browser itself
       -- Examples: history, navigator
  • User-defined object
Event Handlers
  • “Events” are actions that occur as a result of user’s interaction with the browser
  • We use “event handlers” [e.g. onMouseOver(), onClick()] to design Web pages that can react to those events
1.    Batch Programs
2.    Event-Driven Programs

Batch Programs
These are typically started from a shell (or automatically via a scheduler) and tend to follow a pattern of:
Initialize internal data
Read input data
Process that data
Print or store results

Event-Driven ProgramsExamples: GUIs, microwave, camera
The system sends events to the program and the program responds to these as they arrive.
Programming Language
A vocabulary and set of grammatical rules for instructing a computer to perform specific tasks
All programs consists of:

Sequence of instructions
Conditionals
Loops

These may contain:
Data
Input/output (print, etc)
Operations (add, divide, etc)
Examples of Prog. Languages
Types of Prog. Languages
High level Programming Languages
Low Level Programming Languages

High-level programming languages, while simple compared to human languages, are more complex than the languages the uP actually understands,
Assembly languages are similar to machine languages, but are easier to program in as they allow a programmer to substitute names for numbers



Machine languages consist of numbers

Interpreters: immediate response, but execute code slowly.
Compilers: Takes longer to compile, but super-fast execution.
Programming SW Development 
SW Design Methodology ?
The set of (often flexible) rules and guidelines a team of developers follow to construct reasonably complex SW systems
  • Object Oriented Design
  • Structured Design

CS101 short notes Part 6

Object-Oriented Languages
Programming languages specifically designed to make it easy to implement object-oriented designs   
Examples: Smalltalk, C++, Java
Variables
Variables give us the ability to manipulate data through reference instead of actual value.
Variables are names assigned to values.
Identifiers
Identifiers are names used by JavaScript to refer to variables (as well as objects, properties, methods, and functions!). An identifier must begin with an alphabetical character (a-z or A-Z) or the underscore “_” character.