সংকলক এবং এসেমব্লারের মধ্যে পার্থক্য

লেখক: Laura McKinney
সৃষ্টির তারিখ: 1 এপ্রিল 2021
আপডেটের তারিখ: 11 মে 2024
Anonim
অনুবাদক | অ্যাসেম্বলার | কম্পাইলার| দোভাষী| কোডিং একাডেমি
ভিডিও: অনুবাদক | অ্যাসেম্বলার | কম্পাইলার| দোভাষী| কোডিং একাডেমি

কন্টেন্ট


সংকলক এবং এসেমব্লার একটি প্রোগ্রাম কার্যকর করতে একটি গুরুত্বপূর্ণ ভূমিকা পালন করে। কিছু সংকলক সরাসরি সমাবেশ কোডের পরিবর্তে এক্সিকিউটেবল কোড উত্পন্ন করে। সংকলক প্রিক্রোসেসড সোর্স কোডটি নেয় এবং এটি সমাবেশ কোডে অনুবাদ করে। সমাবেশকারী সংকলক থেকে অ্যাসেম্বলি কোডটি নেয় এবং এটি স্থানান্তরযোগ্য মেশিন কোডে অনুবাদ করে। এই নিবন্ধে, আমি নীচে দেখানো তুলনা চার্টের সাহায্যে সংকলক এবং এসেম্বলারের মধ্যে পার্থক্যগুলি আলোচনা করেছি, কেবল একবার দেখুন।

  1. তুলনা রেখাচিত্র
  2. সংজ্ঞা
  3. মূল পার্থক্য
  4. উপসংহার

তুলনা রেখাচিত্র

তুলনা করার জন্য বেসসংকলনকারী অ্যাসেম্বলার
মৌলিকঅ্যাসেম্বলি ভাষার কোড বা সরাসরি সম্পাদনযোগ্য কোড উত্পন্ন করে।স্থানান্তরযোগ্য মেশিন কোড উত্পন্ন করে।
ইনপুটপূর্ববর্তী উত্স কোড।সমাবেশ ভাষা কোড।
পর্যায়ক্রমে / পাসসংকলনের পর্যায়গুলি হ'ল লেক্সিকাল অ্যানালাইজার, সিনট্যাক্স বিশ্লেষক, শব্দার্থ বিশ্লেষক, ইন্টারমিডিয়েট কোড জেনারেশন, কোড অপটিমাইজেশন, কোড জেনারেশন।এসেমব্লার প্রদত্ত ইনপুটটিতে দুটি পাস করে।
আউটপুটসংকলক দ্বারা উত্পন্ন সমাবেশ কোডটি মেশিন কোডের একটি স্মরণীয় সংস্করণ।একটি এসেম্বলারের দ্বারা উত্পাদিত স্থান পরিবর্তনযোগ্য মেশিন কোড বাইনারি কোড দ্বারা প্রতিনিধিত্ব করা হয়।


সংকলক সংজ্ঞা

দ্য সংকলনকারী এমন একটি কম্পিউটার প্রোগ্রাম যা উত্স ভাষায় লেখা প্রোগ্রামটি পড়ে, সমান রূপে অনুবাদ করে এসেম্বলি এবং অ্যাসেম্বলি ভাষার কোডটি ফরওয়ার্ড করে অ্যাসেম্বলার। সংস্থাপক কোডে উত্স কোড অনুবাদ করার সময় সংকলকটিও প্রতিবেদন করে এরর উত্স কোডটিতে তার ব্যবহারকারীর কাছে।

সংকলকগুলি হিসাবে শ্রেণীবদ্ধ করা হয় একক-পাস, মাল্টি-পাস, লোড-অ্যান্ড-গো, ডিবাগিং এবং অপ্টিমাইজেশন। কোনও সংকলক কোন কার্য সম্পাদন করে এবং কীভাবে এটি নির্মাণ করা হয়েছে তার ভিত্তিতে শ্রেণিবদ্ধকরণ করা হয়। এই জটিলতা সত্ত্বেও, সংকলক এর প্রাথমিক কাজ একই থাকে।

সংকলন দুটি অংশে সঞ্চালিত হয়, বিশ্লেষণ অংশ এবং সংশ্লেষণ অংশ। দ্য বিশ্লেষণ অংশ উপাদান কোডটি উপাদানগুলির টুকরো টুকরো করে এবং উত্স কোডের মধ্যবর্তী প্রতিনিধিত্ব করে। দ্য সংশ্লেষণ অংশ মধ্যবর্তী প্রতিনিধিত্ব থেকে লক্ষ্য কোড গঠন।

সংকলনটি নিম্নলিখিত পর্যায়ে সম্পাদিত হয়:


লেক্সিকাল বিশ্লেষক, সিনট্যাক্স বিশ্লেষক, শব্দার্থ বিশ্লেষক, মধ্যবর্তী কোড জেনারেটর, কোড অপ্টিমাইজার, কোড জেনারেটর, সিম্বল টেবিল এবং ত্রুটি হ্যান্ডলার।

  • দ্য লেক্সিকাল বিশ্লেষক উত্স কোডের অক্ষরগুলি পড়ে এবং সেগুলিকে গোষ্ঠীভুক্ত করে টোকেনের স্রোত। প্রতিটি টোকেন এই জাতীয় অক্ষরের লজিকাল অনুক্রমকে উপস্থাপন করে কীওয়ার্ড, শনাক্তকারী, অপারেটর। টোকেন গঠনের চরিত্রের ক্রমকে বলা হয় lexeme.
  • দ্য সিনট্যাক্স বিশ্লেষক লেক্সিকাল বিশ্লেষক এবং গোষ্ঠী টোকেন থেকে প্রাপ্ত টোকেনকে a তে পার্স করে শ্রেণিবদ্ধ কাঠামো.
  • দ্য শব্দার্থ বিশ্লেষক যে কোনও জন্য উত্স কোড পরীক্ষা করে শব্দার্থত ত্রুটি.
  • মধ্যবর্তী কোড জেনারেটর উত্পন্ন মধ্যবর্তী প্রতিনিধিত্ব উত্স কোড
  • দ্য কোড অপ্টিমাইজার মধ্যবর্তী কোডটি দ্রুত চলমান মেশিন কোডে অনুকূলিত করে।
  • দ্য উৎপাদকের কোড অবশেষে লক্ষ্য কোডটি উত্পন্ন করে যা একটি a স্থানান্তরযোগ্য মেশিন কোড বা একটি সমাবেশ কোড.
  • দ্য প্রতীক টেবিল এমন একটি ডেটা স্ট্রাকচার যা সোর্স কোডে প্রতিটি শনাক্তকারীর জন্য রেকর্ড ধারণ করে।
  • ত্রুটি হ্যান্ডলার প্রতিটি পর্যায়ে ত্রুটি সনাক্ত করে এবং ত্রুটিগুলি পরিচালনা করে।

এসেমব্লার সংজ্ঞা

কিছু সংকলক এসেম্বলারের কাজ সম্পাদন করে এবং অ্যাসেম্বলি কোডের পরিবর্তে সরাসরি একটি স্থান পরিবর্তনযোগ্য মেশিন কোড উত্পন্ন করে, যা আরও সরাসরি লিংক / লোডারকে দেওয়া হয়। দ্য প্রতীকী ভাষান্তর সংকলক দ্বারা উত্পন্ন সমাবেশ কোড ইনপুট হিসাবে গ্রহণ করে এবং এর মধ্যে অনুবাদ করে স্থানান্তরযোগ্য মেশিন কোড.

আসুন দেখুন মেশিন কোডটি কীভাবে সমাবেশ কোড থেকে আলাদা। সমাবেশ কোড হয় স্মৃতিসংক্রান্ত মেশিন কোড সংস্করণ। এর অর্থ এটি অ্যাসেম্বলি কোড অপারেশন উপস্থাপনের জন্য নাম ব্যবহার করে এবং এটি মেমরির ঠিকানাগুলিতে নামও দেয়। অন্যদিকে, মেশিন কোড ব্যবহারসমূহ বাইনারি কোডগুলি অপারেশন এবং মেমরি ঠিকানার উপস্থাপনের জন্য।

এমনকি সমাবেশীকরণের সহজতম রূপটিও সম্পাদন করে দুটি পাস ইনপুট উপর। দ্য প্রথম পাস সমস্ত সনাক্ত শনাক্তকারী অ্যাসেম্বলি কোড যা স্টোরেজের অবস্থান বোঝায় এবং এগুলিতে সংরক্ষণ করে প্রতীক টেবিল (সংকলক প্রতীক টেবিল ছাড়া অন্য)। দ্য স্টোরেজ অবস্থান বরাদ্দ করা হয় প্রথম পাসে যে শনাক্তকারীর মুখোমুখি হয়েছিল to

মধ্যে দ্বিতীয় পাস, ইনপুট আবার স্ক্যান করা হয়, এবং এইবার অপারেশন কোড হয় অনূদিত একটি মধ্যে বিট ক্রম মেশিন কোডে যে অপারেশন প্রতিনিধিত্ব। দ্বিতীয় পাসটিও অনুবাদ করে শনাক্তকারী মধ্যে ঠিকানাগুলি প্রতীক টেবিল সংজ্ঞায়িত। সুতরাং দ্বিতীয় পাস উত্পন্ন স্থানান্তরযোগ্য মেশিন কোড.

  1. সংকলক এবং এসেম্বলারের মধ্যে মূল পার্থক্য হ'ল সংকলনকারী অ্যাসেম্বলি কোড উত্পন্ন করে এবং কিছু সংকলক সরাসরি এক্সিকিউটেবল কোডও তৈরি করতে পারে যেখানে, প্রতীকী ভাষান্তর স্থানান্তরযোগ্য মেশিন কোড উত্পন্ন করে।
  2. সংকলকটি ইনপুট হিসাবে গ্রহণ করে প্রিপ্রোসেসড কোড প্রিপ্রোসেসর দ্বারা উত্পাদিত। অন্যদিকে, সমাবেশটি গ্রহণ করে সমাবেশ কোড ইনপুট হিসাবে
  3. সংকলনটি দুটি পর্যায়ে সংঘটিত হয় বিশ্লেষণ পর্ব এবং সংশ্লেষণ পর্ব। বিশ্লেষণের পর্যায়ে ইনপুটটি যায় through লেক্সিকাল বিশ্লেষক, সিনট্যাক্স বিশ্লেষক, শব্দার্থ বিশ্লেষক যদিও, সংশ্লেষণ বিশ্লেষণ মাধ্যমে সঞ্চালিত হয় অন্তর্বর্তী কোড জেনারেটর, কোড অপ্টিমাইজার, কোড জেনারেটর। অন্যদিকে, এসেম্বলার ইনপুটটি দিয়ে যায় দুটি পর্যায়। প্রথম পর্যায়ে শনাক্তকারীদের সনাক্ত করে এবং তাদের দ্বিতীয় ঠিকানাগুলিতে ঠিকানা বরাদ্দ করে বিধানসভা কোডটি বাইনারি কোডে অনুবাদ করা হয়।
  4. সংকলক দ্বারা উত্পন্ন সমাবেশ কোড হ'ল ক স্মৃতি সংস্করণ মেশিন কোড। তবে এসেম্বলারের দ্বারা উত্পাদিত পুনঃস্থাপনযোগ্য মেশিন কোড হ'ল ক বাইনারি পুনঃস্থাপনযোগ্য কোড.

উপসংহার:

কিছু সংকলক সরাসরি সম্পাদনযোগ্য কোড উত্পন্ন করায় এসেমব্লার প্রয়োজন হতে পারে না। যদি এসেম্ব্লার ব্যবহার করা হয় তবে উত্স কোডে ব্যবহৃত লাইব্রেরিগুলিতে সমস্ত বিল্ট-ইন লাইব্রেরিগুলিকে লিঙ্ক করার জন্য লিঙ্কারের প্রয়োজন।