ඉතා මූලික සම්පාදකයෙකු ලියන්නේ කෙසේද


231

gccකේතය ලියා ඇති භාෂාවට අනුව යන්ත්‍ර කියවිය හැකි ලිපිගොනු වලට කේත සම්පාදනය කිරීම වැනි උසස් සම්පාදකයින් (උදා: සී, සී ++, ආදිය). ඇත්ත වශයෙන්ම, ඔවුන් එක් එක් කේතවල අර්ථය පුස්තකාල හා අදාළ භාෂාවල කාර්යයන් අනුව අර්ථ නිරූපණය කරයි. මම වැරදියි නම් මාව නිවැරදි කරන්න.

ස්ථිතික ගොනුවක් සම්පාදනය කිරීම සඳහා ඉතා මූලික සම්පාදකයෙකු (බොහෝ විට සී වලින්) ලිවීමෙන් සම්පාදකයින් වඩා හොඳින් තේරුම් ගැනීමට මම කැමැත්තෙමි (උදා: පෙළ ගොනුවක හෙලෝ වර්ල්ඩ්). මම නිබන්ධන සහ පොත් කිහිපයක් අත්හදා බැලුවෙමි, නමුත් ඒවා සියල්ලම ප්‍රායෝගික අවස්ථා සඳහා වේ. අනුරූප භාෂාව හා සම්බන්ධ අර්ථයන් සමඟ ගතික කේත සම්පාදනය කිරීම සමඟ ඔවුහු කටයුතු කරති.

ස්ථිතික පෙළ යන්ත්‍ර කියවිය හැකි ගොනුවක් බවට පරිවර්තනය කිරීම සඳහා මූලික සම්පාදකයෙකු ලිවිය හැක්කේ කෙසේද?

ඊළඟ පියවර වනුයේ විචල්‍යයන් සම්පාදකයාට හඳුන්වා දීමයි; භාෂාවක සමහර කාර්යයන් පමණක් සම්පාදනය කරන සම්පාදකයෙකු ලිවීමට අපට අවශ්‍ය යැයි සිතන්න.

ප්‍රායෝගික නිබන්ධන සහ සම්පත් හඳුන්වා දීම බෙහෙවින් අගය කරනු ලැබේ :-)



ඔබ ලීක්ස් / ෆ්ලෙක්ස් සහ යක් / බයිසන් උත්සාහ කර තිබේද?
mouviciel

15
ou මුවිසියෙල්: සම්පාදකයෙකු තැනීම ගැන ඉගෙන ගැනීමට එය හොඳ ක්‍රමයක් නොවේ. එම මෙවලම් ඔබ වෙනුවෙන් වෙහෙස මහන්සි වී වැඩ කිරීමෙන් සැලකිය යුතු ප්‍රමාණයක් කරයි, එබැවින් ඔබ එය කිසි විටෙකත් නොකරන අතර එය සිදු කරන ආකාරය ඉගෙන ගන්න.
මේසන් රෝද

11
At සිත්ගන්නාසුලු කරුණක් නම්, ඔබගේ සබැඳිවලින් පළමුව 404 ක් ලබා දෙන අතර දෙවැන්න දැන් මෙම ප්‍රශ්නයේ අනුපිටපතක් ලෙස සලකුණු කර ඇත.
රුස්ලාන්

Answers:


340

හැඳින්වීම

සාමාන්‍ය සම්පාදකයෙකු පහත සඳහන් පියවරයන් කරයි:

  • විග්‍රහ කිරීම: ප්‍රභව පෙළ වියුක්ත සින්ටැක්ස් ගසක් (AST) බවට පරිවර්තනය වේ.
  • වෙනත් මොඩියුලයන් වෙත යොමු කිරීම් නිරාකරණය කිරීම (සී සම්බන්ධ වන තෙක් මෙම පියවර කල් දමයි).
  • අර්ථකථන වලංගු කිරීම: තේරුමක් නැති කෘතිමව නිවැරදි ප්‍රකාශ ඉවත් කිරීම, උදා: ළඟා විය නොහැකි කේතය හෝ අනුපිටපත් ප්‍රකාශ.
  • සමාන පරිවර්තනයන් සහ ඉහළ මට්ටමේ ප්‍රශස්තකරණය: එකම අර්ථ නිරූපණයන් සමඟ වඩාත් කාර්යක්ෂම ගණනය කිරීමක් නියෝජනය කිරීම සඳහා AST පරිවර්තනය වේ. මෙයට ඇතුළත් වන්නේ උදා: පොදු උප ප්‍රකාශන සහ නිරන්තර ප්‍රකාශන කල්තියා ගණනය කිරීම, අධික දේශීය පැවරුම් ඉවත් කිරීම ( SSA ද බලන්න ) යනාදිය.
  • කේත උත්පාදනය: AST රේඛීය පහත් මට්ටමේ කේතයක් බවට පරිවර්තනය වේ, පැනීම්, රෙජිස්ටර් වෙන් කිරීම සහ ඒ හා සමාන ය. සමහර ක්‍රියාකාරී ඇමතුම් මෙම අවස්ථාවෙහිදී පේළිගත කළ හැකිය, සමහර ලූප පාලනය නොකළේ ය.
  • පීෆෝල් ප්‍රශස්තිකරණය: ඉවත් කරන ලද සරල දේශීය අකාර්යක්ෂමතාවයන් සඳහා පහත් මට්ටමේ කේතය පරිලෝකනය කෙරේ.

බොහෝ නවීන සම්පාදකයින් (නිදසුනක් ලෙස, gcc සහ clang) අවසාන පියවර දෙක නැවත වරක් පුනරාවර්තනය කරයි. ආරම්භක කේත උත්පාදනය සඳහා ඔවුන් අතරමැදි පහත් මට්ටමේ නමුත් වේදිකා-ස්වාධීන භාෂාවක් භාවිතා කරයි. එවිට එම භාෂාව වේදිකා-විශේෂිත කේතයක් (x86, ARM, ආදිය) බවට පරිවර්තනය කරනු ලැබේ. මෙයට ඇතුළත් වන්නේ උදා: දෛශික උපදෙස් හැකි විට භාවිතා කිරීම, ශාඛා පුරෝකථන කාර්යක්ෂමතාව වැඩි කිරීම සඳහා උපදෙස් නැවත සකස් කිරීම යනාදිය.

ඊට පසු, වස්තු කේතය සම්බන්ධ කිරීම සඳහා සූදානම්. බොහෝ ස්වදේශීය කේත සම්පාදකයින් විසින් ක්‍රියාත්මක කළ හැකි නිෂ්පාදනයක් නිපදවීම සඳහා සම්බන්ධකය අමතන්නේ කෙසේදැයි දනිති, නමුත් එය සම්පාදනය කිරීමේ පියවරක් නොවේ. ජාවා සහ සී # සම්බන්ධ කිරීම වැනි භාෂාවන් මුළුමනින්ම ගතික විය හැකිය, බර පැටවීමේ වේලාවේදී වීඑම් විසින් සිදු කරනු ලැබේ.

මූලික කරුණු මතක තබා ගන්න

  • එය ක්‍රියාත්මක කරන්න
  • එය ලස්සන කරන්න
  • එය කාර්යක්ෂම කරන්න

මෙම සම්භාව්‍ය අනුක්‍රමය සියලුම මෘදුකාංග සංවර්ධනයට අදාළ වන නමුත් පුනරාවර්තනය වේ.

අනුක්රමයේ පළමු පියවර කෙරෙහි අවධානය යොමු කරන්න. වැඩ කළ හැකි සරලම දේ සාදන්න.

පොත් කියවන්න!

අහෝ සහ උල්මන් විසින් රචිත ඩ්‍රැගන් පොත කියවන්න . මෙය සම්භාව්‍ය වන අතර එය අදටත් අදාළ වේ.

නවීන සම්පාදක නිර්මාණය ද පැසසුමට ලක් වේ.

මේ දේවල් ඔබට දැන් ඉතා අපහසු නම්, පළමුව විග්‍රහ කිරීම පිළිබඳ හැඳින්වීම් කිහිපයක් කියවන්න; සාමාන්‍යයෙන් විග්‍රහ කරන පුස්තකාලවලට හැඳින්වීම් සහ උදාහරණ ඇතුළත් වේ.

ප්‍රස්ථාර, විශේෂයෙන් ගස් සමඟ වැඩ කිරීමට ඔබට පහසු බවට වග බලා ගන්න. මේ දේවල් තාර්කික මට්ටමින් සෑදී ඇති දේවල් ය.

ඔබේ භාෂාව හොඳින් නිර්වචනය කරන්න

ඔබට අවශ්‍ය ඕනෑම අංකනයක් භාවිතා කරන්න, නමුත් ඔබේ භාෂාව පිළිබඳ සම්පූර්ණ හා ස්ථාවර විස්තරයක් ඇති බවට වග බලා ගන්න. මෙයට සින්ටැක්ස් සහ සෙමන්ටික්ස් යන දෙකම ඇතුළත් වේ.

අනාගත සම්පාදකයා සඳහා පරීක්ෂණ අවස්ථා ලෙස කේතයේ කුඩා කොටස් ඔබගේ නව භාෂාවෙන් ලිවීමට කාලයයි.

ඔබේ ප්‍රියතම භාෂාව භාවිතා කරන්න

පයිතන් හෝ රූබි වලින් සම්පාදකයෙකු ලිවීම හෝ ඔබට පහසු ඕනෑම භාෂාවක් ලිවීම සම්පූර්ණයෙන්ම හරි. ඔබ හොඳින් තේරුම් ගත් සරල ඇල්ගොරිතම භාවිතා කරන්න. පළමු අනුවාදය වේගවත්, කාර්යක්ෂම හෝ අංග සම්පූර්ණ විය යුතු නැත. එය අවශ්‍ය වන්නේ ප්‍රමාණවත් තරම් නිවැරදි හා වෙනස් කිරීමට පහසු වීම පමණි.

අවශ්‍ය නම්, සම්පාදකයෙකුගේ විවිධ අවස්ථා විවිධ භාෂාවලින් ලිවීම ද හරි ය.

බොහෝ පරීක්ෂණ ලිවීමට සූදානම් වන්න

ඔබේ මුළු භාෂාවම පරීක්ෂණ අවස්ථා වලින් ආවරණය කළ යුතුය; එය ඔවුන් විසින් අර්ථ දක්වනු ඇත. ඔබ කැමති පරීක්ෂණ රාමුව සමඟ හොඳින් දැන හඳුනා ගන්න. පළමු දිනයේ සිට පරීක්ෂණ ලියන්න. වැරදි කේත හඳුනා ගැනීමට වඩා නිවැරදි කේතය පිළිගන්නා 'ධනාත්මක' පරීක්ෂණ කෙරෙහි අවධානය යොමු කරන්න.

සියලුම පරීක්ෂණ නිතිපතා ධාවනය කරන්න. ඉදිරියට යාමට පෙර කැඩුණු පරීක්ෂණ නිවැරදි කරන්න. වලංගු කේතයක් පිළිගත නොහැකි වැරදි අර්ථකථනය කළ භාෂාවකින් අවසන් වීම ලැජ්ජාවකි.

හොඳ විග්‍රහයක් සාදන්න

පාර්සර් උත්පාදක යන්ත්ර බොහෝ ය . ඔබට අවශ්‍ය ඕනෑම දෙයක් තෝරන්න. ඔබ ඔබේ භාෂාව කාරක රීති නම් එය පමණක් එය වටිනා මුල සිටම ඔබේ ව්යාකරණ විග්රහ ලිවීමට හැකිය, නමුත් මිය ගිය සරල.

විග්‍රහ කරන්නා සින්ටැක්ස් දෝෂ හඳුනාගෙන වාර්තා කළ යුතුය. ධනාත්මක හා negative ණාත්මක යන පරීක්ෂණ අවස්ථා රාශියක් ලියන්න; භාෂාව නිර්වචනය කිරීමේදී ඔබ ලියූ කේතය නැවත භාවිතා කරන්න.

ඔබේ විග්‍රහයේ ප්‍රතිදානය වියුක්ත සින්ටැක්ස් ගසකි.

ඔබේ භාෂාවට මොඩියුල තිබේ නම්, විග්‍රහයේ ප්‍රතිදානය ඔබ ජනනය කරන 'වස්තු කේතයේ' සරලම නිරූපණය විය හැකිය. ගසක් ගොනුවකට දැමීම සහ එය ඉක්මනින් පැටවීම සඳහා සරල ක්‍රම ඕනෑ තරම් තිබේ.

අර්ථකථන වලංගු කරන්නෙකු සාදන්න

බොහෝ විට ඔබේ භාෂාව ඇතැම් සන්දර්භයන්හි තේරුමක් නැති කෘතිමව නිවැරදි ඉදිකිරීම් සඳහා ඉඩ ලබා දේ. උදාහරණයක් ලෙස එකම විචල්‍යයේ අනුපිටපත් ප්‍රකාශයක් හෝ වැරදි වර්ගයක පරාමිතියක් පසු කිරීම. වලංගු කරන්නා ගස දෙස බලන විට එවැනි දෝෂ හඳුනා ගනී.

වලංගු කරන්නා ඔබේ භාෂාවෙන් ලියා ඇති වෙනත් මොඩියුලයන් වෙත යොමු කිරීම් නිරාකරණය කරයි, මෙම අනෙකුත් මොඩියුලයන් පටවා වලංගු කිරීමේ ක්‍රියාවලියේදී භාවිතා කරයි. උදාහරණයක් ලෙස, මෙම පියවර මඟින් වෙනත් මොඩියුලයකින් ශ්‍රිතයක් වෙත ලබා දුන් පරාමිති ගණන නිවැරදි බව සහතික කරනු ඇත.

නැවතත්, පරීක්ෂණ අවස්ථා රාශියක් ලියා ධාවනය කරන්න. සුළු කාරණා බුද්ධිමත් හා සංකීර්ණ ලෙස දෝශ නිරාකරණයේදී අත්‍යවශ්‍ය වේ.

කේතය ජනනය කරන්න

ඔබ දන්නා සරලම ශිල්පීය ක්‍රම භාවිතා කරන්න. බොහෝ විට ifHTML අච්චුවක් මෙන් නොව සැහැල්ලු පරාමිතිගත කේත අච්චුවකට භාෂා ව්‍යුහයක් ( ප්‍රකාශයක් වැනි ) සෘජුවම පරිවර්තනය කිරීම හරි ය .

නැවතත්, කාර්යක්ෂමතාව නොසලකා හරිමින් නිවැරදිභාවය කෙරෙහි අවධානය යොමු කරන්න.

වේදිකාවක්-ස්වාධීන පහත් මට්ටමේ වීඑම් එකක් ඉලක්ක කරන්න

දෘඩාංග විශේෂිත තොරතුරු කෙරෙහි ඔබ දැඩි උනන්දුවක් දක්වන්නේ නැත්නම් ඔබ පහත් මට්ටමේ දේවල් නොසලකා හරිනු ඇතැයි මම සිතමි. මෙම විස්තර ඉතා දරුණු හා සංකීර්ණ ය.

ඔබේ විකල්ප:

  • LLVM: කාර්යක්ෂම යන්ත්‍ර කේත උත්පාදනය සඳහා ඉඩ ලබා දේ, සාමාන්‍යයෙන් x86 සහ ARM සඳහා.
  • සීඑල්ආර්: ඉලක්ක .නෙට්, බොහෝ දුරට x86 / වින්ඩෝස් මත පදනම් වූ; හොඳ JIT එකක් තියෙනවා.
  • JVM: ජාවා ලෝකය ඉලක්ක කරයි, තරමක් බහු ආකෘතියක්, හොඳ JIT එකක් ඇත.

ප්‍රශස්තිකරණය නොසලකා හරින්න

ප්‍රශස්තිකරණය දුෂ්කර ය. සෑම විටම පාහේ ප්‍රශස්තිකරණය නොමේරූ ය. අකාර්යක්ෂම නමුත් නිවැරදි කේත ජනනය කරන්න. එහි ප්‍රති ing ලයක් ලෙස ලැබෙන කේතය ප්‍රශස්තිකරණය කිරීමට පෙර මුළු භාෂාවම ක්‍රියාත්මක කරන්න.

ඇත්ත වශයෙන්ම, සුළු සුළු ප්‍රශස්තකරණයන් හඳුන්වා දීම හරි. නමුත් ඔබේ සම්පාදකයා ස්ථාවර වීමට පෙර කපටි, කෙස් කළඹෙන් වළකින්න.

ඉතින් කුමක් ද?

මේ සියල්ල ඔබට බිය උපදවන දෙයක් නොවේ නම්, කරුණාකර ඉදිරියට යන්න! සරල භාෂාවක් සඳහා, එක් එක් පියවර ඔබ සිතනවාට වඩා සරල විය හැකිය.

ඔබේ සම්පාදකයා විසින් නිර්මාණය කරන ලද වැඩසටහනකින් 'හෙලෝ වර්ල්ඩ්' දැකීම උත්සාහ කිරීම වටී.


47
මෙය මම මෙතෙක් දැක ඇති හොඳම පිළිතුරු වලින් එකකි.
gahooa

11
මම හිතන්නේ ඔබට ප්‍රශ්නයේ කොටසක් මග හැරී ඇත ... OP ට අවශ්‍ය වූයේ ඉතා මූලික සම්පාදකයෙකු ලිවීමට ය . මම හිතන්නේ ඔබ මෙහි මූලික දේ ඉක්මවා යයි.
මාකෝ-ෆිසෙට්

23
@ මාර්කෝ-ෆිසෙට් , ඊට පටහැනිව, එය ඉතා උසස් පිළිතුරක් වන අතර එය වඩාත් මූලික අවධීන් මඟහරවා ගැනීම සඳහා උගුල් පෙන්වා දෙන අතරම ඉතා මූලික සම්පාදකයෙකු කරන්නේ කෙසේදැයි OP ට පවසන විශිෂ්ට පිළිතුරකි.
smci

6
මෙය සමස්ත කොටස් හුවමාරු විශ්වයේ මා දැක ඇති හොඳම පිළිතුරු වලින් එකකි. කුඩෝස්!
ගුවන් ප්‍රහාර

3
ඔබේ සම්පාදකයා විසින් නිර්මාණය කරන ලද වැඩසටහනකින් 'හෙලෝ වර්ල්ඩ්' දැකීම උත්සාහ කිරීම වටී. -
INDEED

29

ජැක් ක්‍රෙන්ෂෝගේ සම්පාදකය ගොඩනඟමු , නිම නොකළ අතර එය කියවිය හැකි හැඳින්වීමක් සහ නිබන්ධනයකි.

නික්ලෝස් වර්ත්ගේ සම්පාදක ඉදිකිරීම් යනු සරල සම්පාදක ඉදිකිරීමේ මූලික කරුණු පිළිබඳ ඉතා හොඳ පෙළපොතකි. ඔහු ඉහළ-පහළ පුනරාවර්තන සම්භවය කෙරෙහි අවධානය යොමු කරයි, එය එයට මුහුණ දෙමු, එය ලීක්ස් / යක් හෝ ෆ්ලෙක්ස් / බයිසන් වලට වඩා පහසුය. ඔහුගේ කණ්ඩායම විසින් ලියන ලද මුල් පැස්කල් සම්පාදකයා මේ ආකාරයෙන් සිදු කරන ලදී.

අනෙක් අය විවිධ ඩ්‍රැගන් පොත් ගැන සඳහන් කර ඇත.


1
පැස්කල් පිළිබඳ හොඳ දෙයක් නම්, භාවිතා කිරීමට පෙර සියල්ල නිර්වචනය කිරීම හෝ ප්‍රකාශ කිරීම ය. එබැවින් එය එක් වරකින් සම්පාදනය කළ හැකිය. ටර්බෝ පැස්කල් 3.0 එවැනි එක් උදාහරණයක් වන අතර මෙහි අභ්‍යන්තරයන් පිළිබඳ බොහෝ ලියකියවිලි තිබේ .
tcrosley

1
පැස්කල් විශේෂයෙන් නිර්මාණය කර ඇත්තේ එක්-පාස් සම්පාදනයකින් සහ මනසින් සම්බන්ධ කිරීමෙනි. වර්ත්ගේ සම්පාදක පොතේ මල්ටිපාස් සම්පාදකයින් ගැන සඳහන් වන අතර, පීඑල් / අයි සම්පාදකයෙකු 70 (ඔව්, හැත්තෑවක්) සමත් වූ බව ඔහු දැන සිටි බව සඳහන් කරයි.
ජෝන් ආර්. ස්ට්‍රෝම්

භාවිතයට පෙර අනිවාර්ය ප්‍රකාශය ALGOL දක්වා දිව යයි. ටෝනි හෝරේ, ඇල්ග්‍රෝල් කමිටුව විසින් ඔහුගේ කන් නැවත ඇණ ගැසුවේ ෆෝට්‍රාන් සතුව තිබූ ආකාරයටම පෙරනිමි ආකාරයේ නීති එකතු කිරීමට යෝජනා කිරීමට ය. නම් සහ සුපුරුදු රීති වල යතුරු ලියන දෝෂ සහ සිත්ගන්නා දෝෂ නිර්මාණය කරමින් මෙය නිර්මාණය කළ හැකි ගැටළු පිළිබඳව ඔවුන් දැනටමත් දැන සිටියහ.
ජෝන් ආර්. ස්ට්‍රෝම්

1
මුල් කතුවරයා විසින්ම පොතේ වඩාත් යාවත්කාලීන හා නිමි අනුවාදය මෙන්න: stack.nl/~marcov/compiler.pdf කරුණාකර ඔබේ පිළිතුර සංස්කරණය කර මෙය එක් කරන්න :)
sonnet

15

මම ඇත්ත වශයෙන්ම ආරම්භ කරන්නේ බ්‍රේන්ෆක් සඳහා සම්පාදකයෙකු ලිවීමෙනි . එය වැඩසටහන්ගත කිරීම සඳහා තරමක් තරබාරු භාෂාවක් වන නමුත් එය ක්‍රියාත්මක කිරීමට ඇත්තේ උපදෙස් 8 ක් පමණි. එය ඔබට ලබා ගත හැකි තරම් සරල වන අතර, වාක්‍ය ඛණ්ඩය ඉවත් කිරීම ඔබ සොයා ගන්නේ නම්, ඊට සම්බන්ධ විධාන සඳහා සමාන C උපදෙස් තිබේ.


7
නමුත්, ඔබ ඔබේ BF සම්පාදකය සූදානම් කළ පසු, ඔබේ කේතය එහි ලිවිය යුතුය :(
500 - අභ්‍යන්තර සේවාදායක දෝෂය

500-InternalServerError සී උපකුලකයක් ක්රමය භාවිතා @
ලෝක ඉංජිනේරු

12

ඔබට සැබවින්ම යන්ත්‍ර කියවිය හැකි කේතයක් පමණක් ලිවීමට අවශ්‍ය නම් සහ අථත්‍ය යන්ත්‍රයක් ඉලක්ක කර නොගන්නේ නම්, එවිට ඔබට ඉන්ටෙල් අත්පොත් කියවා තේරුම් ගත යුතුය

  • ඒ. ක්‍රියාත්මක කළ හැකි කේතය සම්බන්ධ කිරීම සහ පූරණය කිරීම

  • බී. COFF සහ PE ආකෘති (කවුළු සඳහා), විකල්පයක් ලෙස ELF ආකෘතිය තේරුම් ගන්න (ලිනක්ස් සඳහා)

  • ඇ. .COM ගොනු ආකෘති තේරුම් ගන්න (PE ට වඩා පහසුය)
  • .. එකලස් කරන්නන් තේරුම් ගන්න
  • ඊ. සම්පාදකයින් සහ කේත ජනනය කිරීමේ එන්ජිම සම්පාදකයින් තුළ තේරුම් ගන්න.

කීවාට වඩා බොහෝ අපහසුයි. ආරම්භක ස්ථානයක් ලෙස C ++ හි සම්පාදකයින් සහ පරිවර්තකයන් කියවීමට මම ඔබට යෝජනා කරමි (රොනල්ඩ් මැක් විසින්). විකල්පයක් ලෙස, ක්‍රෙන්ෂෝ විසින් "සම්පාදකයෙකු තැනීමට ඉඩ දෙන්න" හරි.

ඔබට එය කිරීමට අවශ්‍ය නැතිනම්, ඔබට ඔබේම වීඑම් එකක් ලිවිය හැකි අතර එම වීඑම් ඉලක්ක කර ගනිමින් කේත ජනක යන්ත්‍රයක් ලිවිය හැකිය.

ඉඟි: Flex සහ Bison FIRST ඉගෙන ගන්න. ඉන්පසු ඔබේම සම්පාදකයෙකු / වීඑම් එකක් සෑදීමට ඉදිරියට යන්න.

වාසනාව!


7
මම හිතන්නේ එල්එල්වීඑම් ඉලක්ක කර ගැනීම මිස සැබෑ යන්ත්‍ර කේතය නොව අද පවතින හොඳම ක්‍රමය ගැන ය.
9000

මම එකඟ වෙමි, මම කලක සිට එල්එල්වීඑම් අනුගමනය කරමින් සිටිමි. එය ඉලක්ක කර ගැනීමට අවශ්‍ය ක්‍රමලේඛක ප්‍රයත්නය අනුව වසර ගණනාවක සිට මා දුටු හොඳම දේවලින් එකක් යැයි මම පැවසිය යුතුය!
Aniket Inge

2
කුමක්ද MIPS හා භාවිතය ගැන spim එය ක්රියාත්මක කිරීමට? නැත්නම් මික්ස් ?

Ic මයිකල් මම මිප්ස් භාවිතා කර නැති නමුත් එය හොඳ වනු ඇතැයි මට විශ්වාසයි.
Aniket Inge

RotPrototypeStark RISC උපදෙස් කට්ටලය, අදටත් භාවිතයේ පවතින සැබෑ ලෝක සකසනය (එය තේරුම් ගැනීම කාවැද්දූ පද්ධතිවලට පරිවර්තනය කළ හැකිය). සම්පූර්ණ උපදෙස් කට්ටලය විකිපීඩියාවේ ඇත. ජාලය දෙස බලන විට, උදාහරණ රාශියක් ඇති අතර එය බොහෝ අධ්‍යයන පන්තිවල යන්ත්‍ර භාෂා වැඩසටහන්කරණයේ ඉලක්කයක් ලෙස භාවිතා කරයි. SO හි එය මත යම් ක්‍රියාකාරකමක් ඇත .

10

සරල සම්පාදකයෙකු සඳහා DIY ප්‍රවේශය මේ වගේ විය හැකිය (අවම වශයෙන් මගේ ඒකීය ව්‍යාපෘතිය පෙනුනේ එයයි):

  1. භාෂාවේ ව්‍යාකරණ නිර්වචනය කරන්න. සන්දර්භය රහිත ය.
  2. ඔබේ ව්‍යාකරණ තවමත් එල්එල් (1) නොවේ නම්, දැන් එය කරන්න. සරල සීඑෆ් ව්‍යාකරණයේ සමහර නීති රීති අවලස්සන බව සලකන්න. සමහර විට ඔබේ භාෂාව ඉතා සංකීර්ණයි ...
  3. පෙළ ප්‍රවාහය ටෝකනවලට (වචන, අංක, වචනාර්ථ) කපා හරින ලෙක්සර් ලියන්න.
  4. ආදානය පිළිගන්නා හෝ ප්‍රතික්ෂේප කරන ඔබේ ව්‍යාකරණ සඳහා ඉහළ-පහළ පුනරාවර්තන සම්භවයක් ලියන්න.
  5. ඔබේ විග්‍රහයට සින්ටැක්ස් ගස් උත්පාදනය එක් කරන්න.
  6. සින්ටැක්ස් ගසෙන් යන්ත්‍ර කේත උත්පාදක යන්ත්රය ලියන්න.
  7. ලාභය සහ බියර්, විකල්පයක් ලෙස ඔබට වඩා හොඳ විග්‍රහයක් කරන්නේ කෙසේද යන්න හෝ වඩා හොඳ කේතයක් ජනනය කරන්නේ කෙසේදැයි සිතීම ආරම්භ කළ හැකිය.

සෑම පියවරක්ම විස්තරාත්මකව විස්තර කරන සාහිත්‍ය ඕනෑ තරම් තිබිය යුතුය.


7 වන කරුණ වන්නේ OP විමසන්නේ කුමක්ද යන්නයි.
ෆ්ලෝරියන් මාගයින්

7
1-5 අදාල නොවන අතර එතරම් සමීප අවධානයක් ලැබීමට සුදුසු නැත. 6 වඩාත් සිත්ගන්නා සුළු කොටසයි. අවාසනාවකට මෙන්, බොහෝ පොත් එකම රටාව අනුගමනය කරයි, කුප්‍රකට මකරා පොතෙන් පසුව, විග්‍රහ කිරීම සහ කේතය හැරවීම කෙරෙහි වැඩි අවධානයක් යොමු කිරීම විෂය පථයෙන් බැහැර වේ.
එස්.කේ.-තර්කනය
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.