Sunday, March 7, 2010

පරිගණක සැකසුම 2

අද මම කතා කරන්නේ යන්නේ ISA ගැන සැකෙවින්....ඒ කිව්වට ඉතින් මම දන්න තරමින් තමා....හෙහෙ

මේක ප්‍රධාන වශයෙන් කොටස් තුනකට බෙදා ගන්න පුලුවනි ඉතින්...

අනිත් එක තමා මම කතා කරන්නේ MIPS Architecture ගැන සලකලා, මේවගේ syntax එක එහෙම වෙනස් වෙනවා ඉතින් architecture වෙනස් උනහම...නමුත් තේරුම් ගන්න පහසු හින්දා අපි MIPS ගැන කතා කරමු.
Instructions කියන්නේ කොටින්ම ගත්තොත් Processor කතා කරන භාෂාවයි, උදාහරනයක් විදිහට, ඔබ සිංහලෙන් හා මම ඉංගිරිසියෙන් කතා කරනවා කියලා හිතන්නකෝ, දැන් කතා කරන එක අපි දෙන්නටම තේරෙන්න නම් පරිවර්ථනයක් වෙන්න ඔනේ කියලා තේරෙනවනේ නේද.. ?
ISA එකෙන් කරන්නේ මේ වැඩේ තමා, කියන්නේ, අපි ලස්සනට පද බෙදලා එහෙම ලියලා තියෙන programming code එක, processor එකට තේරුම් ගන්න පුලුවන් වෙන එකකට හදන එක.
හරි...ඒ වෙනස් කම් ගැන පස්සේ කතාකරමුකෝ, දැන් ආයේත් යොමු වෙමු ISA වලට. දැන් Instructions කියන එක අපිට නිරූපණය කරන පුලුවන් ආකාර දෙකක් තියෙනවා.
  • Binary Code (ie: machine code)
මේක කෙලින්ම processor එකට තේරුම් ගන්න පුළුවන් වෙන ආකාරයට තියෙන format එකක්. තියෙන්න ඉතින් 1යි, 0යි ඒවම තමා, බැලූ බැල්මට නම් අපිට මෙලෝ රහක් නෑ, ඒත් ටිකක් කල් මේවා දැකලා පුරුදු උන ඇහැකට නම් ටක් ගාලා තේරුම් ගන්න පුලුවන් මේ කියලා තියෙන්නේ මොනවද කියලා...ඒක ඉතින් අත්දැකීම් එක්ක ලැබෙන දෙයක්.
  • Assembly Code
මේක ඊට වැඩිය ටිකක් අපිට තේරුම් ගන්න පුළුවන් වෙන විදිහට හදපු එකක්. තියෙන්නේ අංක නෙමේ, වාක්‍යමය නිරූපණයක්. ඒ වගේම එහි තිබෙන්නේ pseudo-representation එකක්.
මේ දෙකේ වෙනස තේරුම් ගන්න බලන්නකෝ පහළ තියෙන උදාහරණ දෙක දිහා.
  • add rd, rs, rt (Assembly Code)
  • 0001 0001 0010 0011 (Binary Code)
දැන් තේරෙනවනේ ඒ දෙකේ වෙනස මොකක්ද කියලා නේද.. ?
දැන් ඊළඟ දෙක ගැන කතා කරන්න කලින් මම MIPS Arithmetic ගැන පොඩ්ඩක් කියලා ඉන්නම්, එතකොට මේක ලේසි වෙයි තේරුම් ගන්න.
MIPS වල තියෙන්නේ හරිම ලේසි හා තේරුම් ගන්න පහසු ආකෘතියක්. 

  • මුලින්ම තියෙන්නේ මොකක්ද කරන්න ඕනේ කියන එකයි. ඒ කියන්නේ operation එකයි.
  • ඊට පස්සේ තියෙන්නේ ඒ operation එක කලාට පස්සේ ගමනාන්තය මොකක්ද කියන එකයි.ඒ කියන්නේ destination operand එකයි.
  • ඊටත් පස්සේ තමා තියෙන්නේ මොකක් මතද අර කලින් කියපු එක වෙන්නෙ කියන එක. ඒ කියන්නේ target and source operands.
වැදගත්ම කාරණය තමා MIPS වලදි තියේන්න පුළුවන් operands තුනක් පමණයි. මේක ඉතින් තේරුම් ගන්න පහසු වෙන්න වගේම, ක්‍රියාතමක කිරීම හා කේතනය කිරීම පහසු වීම සඳහා කළ දෙයක් උනාට, ඒකෙන් සමහර විට කරදර වෙන්නත් ඉඩ තියෙනවා ඉතින්. බලන්නකො පහල තියෙන උදාහරණ දිහා, එතකොට තේරෙයි ඔයාලටම.


අදට මේ ඇති නේද, ගොඩාක් දිගට කරන්න ගියාමත් මොනාත් තේරෙන්නේ නැතිව යනවනේ. ඊළඟ කොටස ළඟදීම බලාපොරොත්තු වන්න.




මේ සටහන කියවූ ඔබට මාගේ ස්තූතිය....වෙලාව තිබේ නම් ඒ ගැන අදහස් දක්වා යන්න.

0 ප්‍රතිචාර:

Post a Comment

ඔබගේ අදහස් සඳහායි මේ අවකාශය

Twitter Delicious Facebook Digg Stumbleupon Favorites More