පරිගණක භාෂාවන්ගේ පරිනාමය (The evolution of computer languages)
පරිගණක භාෂාවන්ගේ පරිනාමය (The evolution of computer languages)
ආරම්භයේ සිට අද දක්වා බිහිවී ඇති සියළුම පරිගණක භාෂාවන් ඒවයේ විධානයන්ගේ ස්වරූපය අනුව ප්රධාන කාණ්ඩ හතරකට වර්ග කළ හැකිය.
1. පළමු වන පරම්පරාවේ පරිගණක භාෂා හෝ යාන්ත්ර භාෂා (Machine Languages)
2. දෙවන පරම්පරාවේ පරිගණක භාෂා හෝ එසෙම්බ්ලි භාෂා (Assembly Languages)
3. තුන්වන පරම්පරාවේ පරිගණක භාෂා හෝ ඉහළ මට්ටමේ භාෂා (High Level Languages)
4. හතරවන පරම්පරාවේ පරිගණක භාෂා හෝ නිර්මාපිත භාෂා (Artificial Languages)

(Image Source : prosoft.guru)
පරිගණක භාෂාවන්ගේ විකාශනයේ දැකිය හැකි මූලිකම ලක්ෂණයක් වන්නේ එම භාෂා ක්රමයෙන් අපට පහසුවෙන් තේරුම් ගත හැකි සහ භාවිතයට පහසු භාෂා ලෙස විකාශනය වීමයි.
2. දෙවන පරම්පරාවේ පරිගණක භාෂා හෝ එසෙම්බ්ලි භාෂා (Assembly Languages)
3. තුන්වන පරම්පරාවේ පරිගණක භාෂා හෝ ඉහළ මට්ටමේ භාෂා (High Level Languages)
4. හතරවන පරම්පරාවේ පරිගණක භාෂා හෝ නිර්මාපිත භාෂා (Artificial Languages)

(Image Source : prosoft.guru)
පරිගණක භාෂාවන්ගේ විකාශනයේ දැකිය හැකි මූලිකම ලක්ෂණයක් වන්නේ එම භාෂා ක්රමයෙන් අපට පහසුවෙන් තේරුම් ගත හැකි සහ භාවිතයට පහසු භාෂා ලෙස විකාශනය වීමයි.
පළමු වන පරම්පරාවේ පරිගණක භාෂා හෝ යාන්ත්ර භාෂා (Machine Languages)
1. වැඩසටහන් ලියන ලද්දේ 0 සහ 1 යන සංකේත මගින් පමණි.
2. විධාන ලිවීම සහ ඇතුළත් කිරීම සංකීර්ණ කාර්යයකි.
3. යන්ත්රය (සකසනයේ වර්ගය) මත යැපෙන භාෂාවකි.
4. ක්රමලේඛකයා විසින් පරිගණකයේ දෘඩාංග පිළිබඳව හොඳ අවබෝධයක් තිබිය යුතුවේ.
5. පරිවර්තක මෘදුකාංගයක් (Translation Software) අවශ්ය නොවේ.
6. වැඩසටහන් ක්රියාත්මක වීම වේගවත්ය.
2. විධාන ලිවීම සහ ඇතුළත් කිරීම සංකීර්ණ කාර්යයකි.
3. යන්ත්රය (සකසනයේ වර්ගය) මත යැපෙන භාෂාවකි.
4. ක්රමලේඛකයා විසින් පරිගණකයේ දෘඩාංග පිළිබඳව හොඳ අවබෝධයක් තිබිය යුතුවේ.
5. පරිවර්තක මෘදුකාංගයක් (Translation Software) අවශ්ය නොවේ.
6. වැඩසටහන් ක්රියාත්මක වීම වේගවත්ය.
දෙවන පරම්පරාවේ පරිගණක භාෂා හෝ එසෙම්බ්ලි භාෂා (Assembly Languages)
1. විධාන ලබා දෙන ආකාරය යාන්ත්ර භාෂා (Machine Languages) වල දී ට වඩා සරලයි.
2. 0 හා 1 මත පදනම් වූ විධාන වෙනුවට සංකේත නාම (ADD, SUB) භාවිත කිරීම නිසා සංකේත භාෂා ලෙස ද හඳුන්වනු ලැබේ.
3. ඇසෙම්බ්ලර් (Assembler) නම් වූ සුවිශේෂී භාෂා පරිවර්තකයක් සංකේතාත්මක භාෂාව යාන්ත්රික භාෂාව බවට පරිවර්තනය කිරීම සඳහා යොදා ගත යුතුය.
4. යන්ත්රය (සකසනය) මත යැපෙන භාෂාවකි.
5. මෙම වර්ගයේ ක්රමලේඛ පළමු පරම්පරාවට වඩා ක්රියාත්මක වන වේගය අඩුයි.
6. ක්රමලේඛයන් නිදොස් (Debugging) කිරීම යන්ත්ර භාෂා ක්රමලේඛ නිදොස් කිරීමට වඩා පහසු වීම.
මෙම වර්ගයේ භාෂාවන්ගෙන් සම්පාදිත ක්රමලේඛ පරිගණකයට සෘජුවම ක්රියා කරවිය නොහැකිය. ඒ සඳහා ඇසෙම්බ්ලර් (Assembler) නම් වූ භාෂා පරිවර්තක මෘදුකාංග මගින් එම ක්රමලේඛ හෝ විධාන අදාල යන්ත්ර භාෂාවට පරිවර්තනය කළ යුතුවේ.
2. 0 හා 1 මත පදනම් වූ විධාන වෙනුවට සංකේත නාම (ADD, SUB) භාවිත කිරීම නිසා සංකේත භාෂා ලෙස ද හඳුන්වනු ලැබේ.
3. ඇසෙම්බ්ලර් (Assembler) නම් වූ සුවිශේෂී භාෂා පරිවර්තකයක් සංකේතාත්මක භාෂාව යාන්ත්රික භාෂාව බවට පරිවර්තනය කිරීම සඳහා යොදා ගත යුතුය.
4. යන්ත්රය (සකසනය) මත යැපෙන භාෂාවකි.
5. මෙම වර්ගයේ ක්රමලේඛ පළමු පරම්පරාවට වඩා ක්රියාත්මක වන වේගය අඩුයි.
6. ක්රමලේඛයන් නිදොස් (Debugging) කිරීම යන්ත්ර භාෂා ක්රමලේඛ නිදොස් කිරීමට වඩා පහසු වීම.
මෙම වර්ගයේ භාෂාවන්ගෙන් සම්පාදිත ක්රමලේඛ පරිගණකයට සෘජුවම ක්රියා කරවිය නොහැකිය. ඒ සඳහා ඇසෙම්බ්ලර් (Assembler) නම් වූ භාෂා පරිවර්තක මෘදුකාංග මගින් එම ක්රමලේඛ හෝ විධාන අදාල යන්ත්ර භාෂාවට පරිවර්තනය කළ යුතුවේ.
තුන්වන පරම්පරාවේ පරිගණක භාෂා හෝ ඉහළ මට්ටමේ භාෂා (High Level Languages)
1. ඉංග්රීසි භාෂාවට සමීප පරිගණක භාෂා මෙම වර්ගයට අයත්වේ (Java, FORTRON, COBOL, C#, C++, Pascal, PHP, Visual Basic).
2. ක්රමලේඛ (Programs) සම්පාදනය කිරීම පහසුයි.
3. යන්ත්ර (සකසන) මත යැපෙන භාෂාවක් නොවේ.
4. ක්රමලේඛකයෙකුට (Programmer) පුහුණු කිරීම පහසුයි.
5. පරිවර්තක මෘදුකාංගයක් (Translation Software) අවශ්ය නොවේ.
මෙම වර්ගයේ භාෂා ද ඇසෙම්බ්ලි භාෂා (Assembly Languages) මෙන් ම පරිගණකයට සෘජුව ම තේරුම් ගැනීමට නොහැකිය. එබැවින් භාෂා පරිවර්තක මෘදුකාංගයක් (Language Translation Software) මගින් මෙම භාෂාවන්ගෙන් ලියැවුණු ක්රමලේඛ අදාළ පරිගණකයේ යන්ත්ර භාෂා (Machine Languages) වලට පරිවර්තනය කළ යුතුවේ.
2. ක්රමලේඛ (Programs) සම්පාදනය කිරීම පහසුයි.
3. යන්ත්ර (සකසන) මත යැපෙන භාෂාවක් නොවේ.
4. ක්රමලේඛකයෙකුට (Programmer) පුහුණු කිරීම පහසුයි.
5. පරිවර්තක මෘදුකාංගයක් (Translation Software) අවශ්ය නොවේ.
මෙම වර්ගයේ භාෂා ද ඇසෙම්බ්ලි භාෂා (Assembly Languages) මෙන් ම පරිගණකයට සෘජුව ම තේරුම් ගැනීමට නොහැකිය. එබැවින් භාෂා පරිවර්තක මෘදුකාංගයක් (Language Translation Software) මගින් මෙම භාෂාවන්ගෙන් ලියැවුණු ක්රමලේඛ අදාළ පරිගණකයේ යන්ත්ර භාෂා (Machine Languages) වලට පරිවර්තනය කළ යුතුවේ.
හතරවන පරම්පරාවේ පරිගණක භාෂා හෝ නිර්මාපිත භාෂා (Artificial Languages)
1. තීරණ ගැනීම (Decisions Making) සඳහා පරිගණක මාධ්ය මගින් නිර්මාණය කිරීමට භාවිත කරයි.
2. පරිගණක වලට මිනිසුන් භාවිතා කරන භාෂා තේරුම් ගැනීමට පහසු වන මෘදුකාංග නිර්මාණය කිරීමට ද භාවිතා වේ.
3. Lisp සහ Prolog මේ සඳහා නිදසුන් වේ.
4. රොබෝ යන්ත්ර වල සංවේදී උත්තේජක වලට ප්රතිචාර දැක්වීම සඳහා වැඩසටහන් නිර්මානය කිරීමට ද භාවිතා කරයි.
5. ඉතාමත්ම කෙටි කාලයකින් ඉගෙන ගත හැකි වීම.
6. අවශ්ය කරන විධාන තුන්වන පරම්පරාවේ පරිගණක භාෂා වලට වඩා අඩු විධාන සංඛ්යාවකින් කර ගැනීමට හැකි වීම.
බොහෝ අවස්ථා වලදී හතරවන පරම්පරාවේ පරිගණක භාෂා දෘෂ්ය පරිස්ථිතියක් (Visual Environment) ලබා දෙමින් ඉතා පහසුවෙන් පරිගණක වැඩසටහන් සකස් කිරීමට අවස්ථාව ලබා දේ.
පරිගණක භාෂාව පිළිබඳව තවත් පාඩමක්.
පරිගනක භාෂාව
පරිගනකය කළයුතු විශේෂ කාර්යයක් ඉටු කරන ආකාරය දැක්වෙන උපදෙස් සමූහයකි.
පරිගනකයට උපදෙස් ලබාදීම සඳහා නිර්මාණය කරන ලද විධිමත් භාෂාවකි.
පරිගනකයේ හැසිරීම පාලනය කිරීම සඳහා නිර්මාණය කරන ලද විධිමත් භාෂාවකි.
පරිගනක භාෂාවන්ගේ පරිණාමය ප්රධාන වශයෙන් කොටස් 2 කි.
පහළ තලයේ පරිගනක භාෂා (Low Level Programming Languages)
යන්ත්ර භාෂාව (Machine Language)
එසෙම්බ්ලි භාෂාව (Assembly Language)
ඉහළ තලයේ පරිගනක භාෂා (High Level Programming Languages)
පහළ තලයේ පරිගනක භාෂා (Low Level Programming Languages)
පහළ තලයේ පරිගනක භාෂාසඳහා උදාහරණ දෙකකි.
යන්ත්ර භාෂාව (Machine Language)
යන්ත්ර භාෂාවේ ලක්ෂණ පහත පරිදි දෙක්විය හැකිය.
පරිගනකය තුළ ඍජුවම ක්රියාත්මක කළහැකි පරිගනක භාෂාව වේ.
පරිගනකට උපදෙස් දීම සඳහා "0" සහ "1" යොදාගනු ලබයි.
පරිගනකයට තේරුම් ගතහැකි එකම පරිගනක භාෂාව යන්ත්ර භාෂාවයි.
පරිගනකය තුළ ක්රියාත්මකවීම ඉතා වේගවත් වේ.
භාෂා පරිවතක වැඩසටහන් අවශ්ය නොවේ.
යන්ත්ර භාෂා ඉතා සංකීර්ණ බැවින් මිනිසාට තේරුම් ගැනීම අපහසුය.
යන්ත්ර මත යැපීම නිසා එක් යන්ත්රයකට ලියන ලද ක්රමලේඛයක් වෙනත් යන්ත්රයකට භාවිතා කළ නොහැකිය.
එසෙම්බ්ලි භාෂාව (Assembly Language)
එසෙම්බ්ලි භාෂාවේ ලක්ෂණ පහත පරිදි දෙක්විය හැකිය.
එසෙම්බ්ලි භාෂාව, යන්ත්ර භාෂාව මත පදනම්ව ලියන ලද විධාන වෙනුවට සරල සංඛේත භාවිතා කරයි.
එසෙම්බ්ලි භාෂාවට විශේෂිත වූ විධාන සහ එම විධාන ලිවීමේ ආකෘතියක් ඇත. ඒවා භාවිතා කරමින් වැඩසටහන් ලියනු ලබයි.
පරිගනකය මත ක්රියාත්මකවීම යන්ත්ර භාෂාවට වඩා වේගයෙන් අඩුය.
යන්ත්ර මත යැපීම නිසා භාවිතය අපහසුය.
මිනිස් භාෂාවන්ට තරමක් සමීප සංඛේත භාවිතා කිරීම නිසා යන්ත්ර භාෂාවට සාපේක්ෂව තේරුම් ගැනීම පහසුය.
භාෂා පරිවර්තක වැඩසටහනක් මගින් යන්ත්ර භාෂාවට පරිවර්තනය කරයි. එම භාෂා පරිවර්තක වැඩසටහන ඇසෙම්බ්ලර් ( Assembler) ලෙස හැඳින්වේ.
ඉහළ තලයේ පරිගනක භාෂා (High Level Programming Languages)
ඉහළ තලයේ පරිගනක භාෂාවල ලක්ෂණ පහත පරිදි දෙක්විය හැකිය.
ඉංග්රීසි භාෂාවේ සරල වචන යොදාගනිමින් ඉහළ තලයේ පරිගනක භාෂා ලියනු ලබයි.
ඉංග්රීසි භාෂාවේ සරල වචන යොදාගනිමින් ලියන නිසා තේරුම් ගැනීමට පහසු වේ.
යන්ත්ර භාෂාව මත යැපීමක් සිදු නොවන නිසා, ඕනෑම පරිගනකයක ක්රියාත්මක කළ හැකිය.
භාෂා පරිවර්තක වැඩසටහනක් යොදාගනිමින් යන්ත්ර භාෂාවට පරිවර්තනය කළ යුතුය. ඒ සඳහා භාෂා පරිවර්තක වැඩසටහන් ලෙස අර්ථවින්යාසක (Interpreter) සහ සම්පාදක (Compiler) භාවිතා කරයි.
ඉහළ තලයේ පරිගනක භාෂා සඳහා උදාහරණ :
Pascal
JAVA
C
C++
C#
VB
Ada
Algol
BAISIC
Python
FORTRAN
සියලුම පරිගණක භාෂාවන් ඒවගේ විධානයන්ගේ ස්වරූපය අනුව කොටස් 4කට බෙදා දක්වයි.
පළමු පරම්පරාවේ පරිගණක භාෂා හෝ යන්ත්ර භාෂා ( Machine Languages )
දෙවන පරම්පරාවේ පරිගණක භාෂා හෝ එසෙම්බ්ලි භාෂා ( Assembly Languages )
තුන්වෙනි පරම්පරාවේ පරිගණක භාෂා හෝ ඉහළ මට්ටමේ භාෂා ( High Level Languages)
හතරවෙනි පරම්පරාවේ පරිගණක භාෂා හෝ නිර්මාපිත භාෂා ( Artificial Languages )
පරිගණක භාෂාවන්ගේ පරිණාමයට බලපෑ මුලික හේතු කිහිපයකි.
පරිගණක වල මිල ක්රමයෙන් පහත වැටීම හා පරිගණක සාමාන්යය පුද්ගලයෙකුට මිලදී ගතහැකි උපකරණයක් බවට වීම.
පරිගණක වල ධාරිතාවයන් ( Storage ) හා දත්ත සැකසීමේ වේගය( Processing Speed ) ක්රමයෙන් වැඩිවීම.
පරිගණක වල විශාලත්වය පොඩි වීම.
පරිගණක විවිධ කාර්යයන් මෙන්ම සංකීර්ණ කාර්යයන් සඳහා යොදාගැනීම.
පරිගණක භාෂාවන්ගේ විකාශනයේ දී දක්නට හැකි මුලික ලක්ෂණයක් වන්නේ එම භාෂා ක්රමයෙන් අපිට පහසුවෙන් තේරුම්ගන්න පුළුවන් විදිහට සහ භාවිතයට පහසු භාෂාවක් සේ විකාශනය වීමයි.
අපේ Suranga Tech Show Youtube Channel එකටත් යන්න.තාක්ෂණික පාඩම් බලන්න.චැනල් එකේ ඇති රතු පාට Subscribe බටන් එකත් ක්ලික් කරලා ඔබේ සහයෝගය අපිට ලබා දෙන්න. මෙන්න ලින්ක් එක පහතින්
සැකසුම - Suranga Tech Show Youtube Channel සුරංග පුෂ්ප කුමාර 0713737030
No comments:
Post a Comment