CSCI 1200 / ASSC 1000

Download Report

Transcript CSCI 1200 / ASSC 1000

CSCI 1200 / ASSC 1000
[email protected]
Software
•
•
•
•
program : instructions for hardware.
makes computers useful.
early computers : re-wiring.
today : programming languages.
Fast & Stupid
• very basic instructions :
• math, logic, move & copy values, etc…
• results achieved through speed.
• computers are unforgiving,
instructions must be precise.
Programming
• algorithm – general procedure
• programming – handle the specifics
• debugging – finding and fixes errors.
Languages
•
•
•
•
Machine Language
Assembly Language
High Level Programming Language
Natural Language
Machine Language
•
•
•
•
understood by the hardware.
executed by the CPU.
binary strings.
instruction set.
Assembly Language
• mnemonics mapped to bit strings.
• slow & error-prone for people.
• better hardware performance.
00000100 10000000
LOAD 128
00000000 10000001
ADD 129
00000101 10000000
STORE 128
00001111 00000000
HALT
High Level Language
• more familiar for people.
• english-like structure.
• examples : C, C++, Java, FORTRAN,
and Visual Basic.
High Level Language
var x;
var y;
if (x == 2) then
x = y + 1;
else
x = 0;
print(“the value of x is ”, x);
Translation
• Compiler / Interpreter
• source code to machine code.
• high level language is hardware
independent, but translated to
hardware dependant machine code.
Kinds of Software
• Translation Software
• System Software :
• Operating systems (Wiindows, UNIX,etc)
• “talk” to the hardware
• Application Software :
• use operating system and hardware to do
something, MS Word, netscape etc.
System Software
Operating System :
• communication with peripherals
• coordination
• storing and retrieving data
• running programs
• managing memory
• network communications
• resource monitoring, account, security
System Software
Operating System Details :
• Windows XP, Mac OS X, UNIX, Linux,
Window CE
• platform : OS and hardware (Wintel).
• emulation : like something else.
System Software
Utility Programs :
• repairing damaged files.
• copy files from one storage device to
another.
• guarding against viruses.
• may look like are of the OS.
System Software
Device Drivers :
• control and interface a hardware
component or peripheral.
• may come with the operating system,
or with the component.
Input Devices
Keyboards :
• Qwerty / Dvorak / Alphabetic
• ergonomic
• compact
• membrane
• one handed
• folding
Input Devices
`~
1! 2@ 3# 4%
'" ,< .> p
a
o
e
u
;: q
j
k
5^
y
i
x
6^
f
d
b
7&
g
h
m
8*
c
t
w
9(
r
n
v
0)
l
s
z
[\{
/?
-_
]}
+=
\\|
Input Devices
Pointing Device :
• selecting from options / menus.
• spatial tasks / graphics applications.
• efficiency
Input Devices : Pointing
•
•
•
•
•
•
•
Mouse : mechanical, light
Touch Pad : finger pressure
Track Ball : upside down mouse
Pointing Stick : TrackPoint, Isopoint
Joystick : and other gaming devices
Tablet & Stylus
Touch Screen
Input Devices : Reading
•
•
•
•
Optical Mark Readers
Bar Code Readers
Magnetic Ink Character Readers
RFID Tags & Readers
Input Devices : Reading
• Optical Character Recognition
• Handwriting recognition
• Smart Whiteboard
Input Devices : Digitizing
•
•
•
•
Scanner
Digital Camera
Video Digitizer
Digital Video Camera
Output : Monitor
•
•
•
•
most familiar (VDT)
diagonally in inches
pixels, dpi, resolution
colour depth : number of colours that
can be displayed at one time
• video adaptor / video card
• VRAM
Output : Monitor
• Liquid Crystal Display
• Cathode Ray Tube
Output : Printers
•
•
•
•
•
•
impact & non-impact
dot matrix printers & line printers
laser & ink jet
resolution
plotter
multi-function devices..