Transcript PROGRAMIMI

PROGRAMI DHE PROGRAMIMI
KUPTIMET BAZIKE
• Programimi, përmbajtjet programore ndahen në:
– Sistemore
– Aplikative
• Gjuhët programore ndahen në:
– gjuha e makinës
– asembler
– Gjuhët programore të nivelit të lartë
• Programet përkthyese
– Kompilatorët
– Interpretatorët
• Programet, instrukcionet
-- P R O G R A M I M I --
1
PROGRAMIMI – Çka është?
Programimi është një veprim i paramenduar ku
problemet e ndryshme të mund ti zgjidhim me
ndihmën e kompjuterit.
Me këtë nënkutojmë dhënjen e instrukcioneve të
caktuara kompjuterit që të kryen operacione
aritmetike dhe logjike.
Për zgjidhjen e një problemit me ndihmën e
kompjuterit duhet ndarë në:
- Definimin e problemit
- Zgjedhjen e problemit dhe
- Korigjimin e drejtshmënin e programit.
-- P R O G R A M I M I --
2
KOMPJUTERI
KOMPJUTER:
Është aparat që mund
të programohet ku
bazohet në dy
parime:
- Definim i mirë i
instrukcioneve të
dhëna, përgjigjet me
sjellje të mirë të
kompjuterit;
Mundet ta ekzekuton
listën e instrukcioneve
paraprake
(programin).
-- P R O G R A M I M I --
3
PËRMBAJTJA PROGRAMORE (software)
• Përmbajtja programore (software) është termin për gjitha
programet që kompjuteri mund me i ekzekutuar si dhe të
dhënat që me ndihmën e këtyre programeve,
ekzekutojnë operacione të ndryshme.
• Përmbajtja teknike (hardware) mund me shum precizitet
të aktivizohen me ndihmën e programeve, që nga kjo
rrjedh se duhet pasur lidhshmëri të madhe ndërmjet
përmbajtjes teknike dhe asaj programore.
• Përmbajtja programore ndahet në dy grupe fillestare:
– Përmbajtja programore sistemore (System software) dhe
– Përmbajtja programore aplikative (Application software).
-- P R O G R A M I M I --
4
• Përmbajten programore sistemore, prodhuesi i paisjeve
kompjuterike i dërgon shfrytëzuesit së bashku me
harduerin, sepse u janë përshtatur konfiguracionit të
kompjuterit të prodhuar (njesive hyrse dhe dalëse si dhe
njesive tjera.
• Përmbajtjen programore aplikative zhvillon shfrytëzuesi
sipas nevojave dhe detyrave që i vepron me ndihmën e
kompjuterit dhe prej nga edhe është dakorduar të blen
paisje kompjuterike.
-- P R O G R A M I M I --
5
Përmbajtja programore sistemore
• Përmbajtja programore sistemore përfshin:
– Sistemet operative (Windows, Linux,…)
– Gjuhët programore dhe
– Programet ndihmëse .
-- P R O G R A M I M I --
6
Gjuhët programore (Programming languages)
• Gjuhën që e njeh kompjuteri për njeriun është i huaj. Prandaj duhet
të krijohet një mehanizëm ndërjetësues që do të jetë urë kaluese
mes gjuhës së njeriut dhe gjuhës së kompjuterit, dmth një përkthyes.
• Më shpesh ky mehanizëm përkthen prej gjuhës së njeriut në gjuhën
e kompjuterit.
• Gjuha e kompjuterit në dallim nga gjuha e njeriut është se kompjuteri
shfrytëzon sistemin binar të punës (greqisht: BI-dy) që don të thot se
njeh vetëm “0” dhe “1”.
• Mekanizmi ndërmjetësues ose mehanizmi që këthen gjuhën e njeriut
në gjuhën e kompjuterit mund të jenë:
– Përkthyes kompilator, dhe
– Përkthyes interpretator
-- P R O G R A M I M I --
7
Gjuhët programore
• Përkthyes kompilator janë të kategorizuar në:
– Gjuhët programore të nivelit të ulët
( low-level languages )
– asemblere - asemblers
– Gjuhët programore të nivelit të lartë
(high-level languages);
-- P R O G R A M I M I --
8
Gjuhët programore
- prej gjuhës së makinës gjer te gjuha programore e nivelit të lartë
-- P R O G R A M I M I --
9
Gjuha e makinës - Machine language
•
•
•
•
•
•
•
•
Gjuhë programore e nivelit më të ulët
Gjuhë programore e gjeneracionit të parë.
Gjuhë programore e paraqitur me sistemin numrave binar
Instrukcionet janë dhë me kodin binar – me kombinimin e
numrave binar.
Gjuha e makinës është e vetmja gjuhë që e njeh kompjuteri.
Prandaj për dhënjen e instrukcioneve zhfrytëzon vetëm numra
binar, prandej për njeriun është e vështir për ta kuptuar dhe e
vështirson punën me kompjuter.
Profesionistët kompjuterik në punën e tyre shfrytëzojnë gjuhën
asembler ose gjuhët të nivelit të lartë.
Secila procesor ka gjuhën e vet të vetëm të makinës.
Punën me gjuhëhën programore të makinë kërkon ti njihni mirë
strukturën e përmbajtjeve teknike të kompjuterit.
-- P R O G R A M I M I --
10
Asembleri
• Asembleri është gjuhë programore e gjeneratës së dytë.
• U paraqit viteve të ’50 të shekullit të kaluar.
• Secili kod i makinës u zavendësua me simbole të
ndryshme të alfabetit.psh.: 10010101 me ADC
• Asembleri është i të njejtës strukturë si dhe gjuha
programore e makinës, por me dallim se i mundëson
progamerëve ti emërton urdhëresat në vend të numrave
binar.
• Secila njesi e procesorit qëndror ka të vetmin asembler
të vetën.
-- P R O G R A M I M I --
11
Gjuhët programore e nivelit të lartë
– High Level Language
• Gjuhët programore të nivelit të lartë nuk janë të lidhura për
kompjuterin dhe mund të përdoren në vende të ndryshme.
• Përparsia bazike e këtyre programeve është lehtësia e të
kuptuarit: leximit, të shkruajturit dhe mirmbajtjes.
• Urdhresat për njeriun të lehta dhe të kuptueshme.
• Gjuhët programore të nivelit të lartë patjetër e kanë të
shndërohen në gjuhën e makinës përmes kompilatorëve ose
interpretatrëve.
-- P R O G R A M I M I --
12
Asembler
-- P R O G R A M I M I --
13
Përkthyesi - kompilatori
( Compiler )
• Përkthyesi - kompilatori është program që si hyrje pranon kodin
fillestar burimor (source code) të programit i shkruar në njërën prej
gjuhëve të nivelit të lartë dhe kryen shndrimin në gjuhën programore
të makinës.
Programi i shkruar në
kodin bazik
Compiler
Programi i shkruar në
gjuhën e makinës
Mesazhet për gabimet
në program
-- P R O G R A M I M I --
14
-- P R O G R A M I M I --
15
Gjuha programore e nivelit të lartë
(High Level Language)
Library
Code
Source
Code
Line 1
Line 2
Compiler
High Level
Language
Object
Program
101101
Machine
Code
-- P R O G R A M I M I --
16
Interpretori – Përkthyes interpretator
• Interpretatori përkthen programin burimor në program
me kod të makinës dhe në të njejtën kohë aktivizon
programin për realizim.
• Problemi u zgjidh me ndihmën e programeve të nivelit
të lartë dhe aktivizimi kruhet më ngadal nga programet
e tipit të kompilatorëve.
Source
Code
Line 1
Line 2
Interpreter
Output
High Level
Language
-- P R O G R A M I M I --
17
-- P R O G R A M I M I --
18
GJUHËT PROGRAMORE - Programming Languages
• BASIC – 1960
• C ++ – 1980
• COBOL –1960
• Java –1995
• Pascal –1967
-- P R O G R A M I M I --
19
Programi – Instruksioni (urdhëresa, udhëzime)
• Program quajmë bashkësi të instrukcioneve që
realizohen sipas një radhitjeje të caktuar dhe qëllimit të
caktuarje.
• Programi është si reçetë që përbëhet prej një liste të
variablave (ndryshoreve) dhe listën e instrukcioneve
(urdhëresave) që i tregon kompjuterit çka të bën me
ndryshoret. Ndryshoret mund të jenë numra, shkronja
ose fotografi.
• Instruksionet (urdhëresa, udhëzime) përbëhen nga
operacionet që duhet të realizohen në kompjuter,
metodën e realizimit, vendin ku gjendet dhe vendin ku
duhet ta përcjell si rezultat.
-- P R O G R A M I M I --
20
Shembull: Programi - Instruksioni
• Programi është varg i instruksioneve të
ndryshme të radhitur sipas një algoritmi.
• Algoritëm quajmë zgjidhjen e një
problemi hap-pas hapi
10 INPUT “Shëno një numër A”, A
20 INPUT “Shëno një numër B”, B
40 C = A + B
50 PRINT C
-- P R O G R A M I M I --
21
Programim në Pascal
Program calc;
Var
num1, num2, calc: real;
begin
writeln (‘ENTER 1ST NUMBER: ‘);
read (num1);
writeln (‘ENTER 2ND NUMBER: ‘);
read (num2);
calc := num1 + num2;
writeln ( num1, ‘ + ’, num2, ‘ = ‘, calc);
end.
-- P R O G R A M I M I --
22
Programim në gjuhën programore C++
#include <stdio.h>
main()
{
float num1, num2, calc;
printf("Enter 1st No:");
scanf("%f",&num1);
printf("Enter 2nd No:");
scanf("%f",&num2);
calc = num1 + num2;
printf("%3.2f + %3.2f = %3.2f\n",num1,num2,calc);
}
-- P R O G R A M I M I --
23
Programi në COBOL
IDENTIFICATION DIVISION.
PROGRAM-ID. ADDER.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 calc
PIC 9(3).
01 num1
PIC 9(3).
01 num2
PIC 9(3).
PROCEDURE DIVISION.
DISPLAY ERASE.
DISPLAY "ENTER 1ST NUMBER: " WITH NO ADVANCING.
ACCEPT num1.
DISPLAY "ENTER 2ND NUMBER: " WITH NO ADVANCING.
ACCEPT num2.
COMPUTE calc = num1 + num2.
DISPLAY num1, " + ", num2, " = ", calc.
STOP RUN.
-- P R O G R A M I M I --
24