অ্যাসেম্বলি কোড বনাম মেশিন কোড বনাম অবজেক্ট কোড?


227

অবজেক্ট কোড, মেশিন কোড এবং সমাবেশ কোডের মধ্যে পার্থক্য কী?

আপনি তাদের পার্থক্য একটি চাক্ষুষ উদাহরণ দিতে পারেন?


আমি জানতে আগ্রহী যে "অবজেক্ট কোড" নামটি কোথা থেকে এসেছে? এর মধ্যে "অবজেক্ট" শব্দের অর্থ কী? এটি কি কোনওভাবে অবজেক্ট-ওরিয়েন্টেড প্রোগ্রামিংয়ের সাথে সম্পর্কিত বা নামের সাথে কেবল একটি কাকতালীয় বিষয়?
সাসকিউ


ক্যাপ্টেন ওবিশ, আমি কোন অবজেক্ট কোড কী তা সম্পর্কে জিজ্ঞাসা করছি না। নামটি কোথা থেকে এসেছে এবং এটিকে "অবজেক্ট" কোড কেন বলা হয় তা সম্পর্কে আমি জিজ্ঞাসা করছি।
বারবারাওয়ারকোয়ার্ক

উত্তর:


296

মেশিন কোড বাইনারি (1 এর এবং 0 এর) কোড যা সরাসরি সিপিইউ দ্বারা কার্যকর করা যায়। আপনি যদি একটি টেক্সট এডিটর একটি মেশিন কোড ফাইল খোলার জন্য ছিল আপনি আবর্জনা দেখতে হবে, অমুদ্রণীয় অক্ষর সহ (কোন না অমুদ্রণীয় অক্ষর;))।

অবজেক্ট কোড মেশিন কোডের একটি অংশ যা এখনও একটি সম্পূর্ণ প্রোগ্রামের সাথে লিঙ্ক করা হয়নি। এটি একটি নির্দিষ্ট গ্রন্থাগার বা মডিউলটির জন্য মেশিন কোড যা সম্পূর্ণ পণ্যটি তৈরি করবে। এটিতে স্থানধারক বা কোনও সমাপ্ত প্রোগ্রামের মেশিন কোডে পাওয়া যায় না এমন অফসেটও থাকতে পারে। Linker কানেক্ট সবকিছু একসঙ্গে এইসব প্লেসহোল্ডার এবং অফসেট ব্যবহার করবে।

অ্যাসেম্বলি কোডটি প্লেইন-টেক্সট এবং (কিছুটা) মানব পঠনযোগ্য উত্স কোড যার বেশিরভাগই মেশিনের নির্দেশাবলী সহ সরাসরি 1: 1 এনালগ থাকে। এটি প্রকৃত নির্দেশাবলী, রেজিস্টার বা অন্যান্য সংস্থানগুলির জন্য স্মৃতিবিদ্যার সাহায্যে সম্পন্ন হয় accomp উদাহরণগুলি অন্তর্ভুক্ত করে JMPএবং MULTসিপিইউর জাম্প এবং গুণনের নির্দেশাবলীর জন্য। মেশিন কোডের বিপরীতে, সিপিইউ সমাবেশ কোডটি বোঝে না। আপনি এসেম্বলার বা সংকলক ব্যবহার করে অ্যাসেম্বলি কোডটি মেশিনে রূপান্তর করেন , যদিও আমরা সাধারণত উচ্চ-স্তরের প্রোগ্রামিং ভাষার সাথে সংযোগকারীদের কথা ভাবি যা সিপিইউ নির্দেশাবলী থেকে আরও বিমূর্ত হয়।

একটি সম্পূর্ণ প্রোগ্রাম তৈরির জন্য এসেম্বলি বা সি ++ এর মতো একটি উচ্চ স্তরের ভাষায় প্রোগ্রামের জন্য সোর্স কোড লেখা । উত্স কোডটি অ্যাসেম্বল করা হয় (এসেম্বলি কোডের জন্য) বা সংকলিত (উচ্চ স্তরের ভাষাগুলির জন্য) অবজেক্ট কোডে এবং পৃথক মডিউলগুলি একত্রে সংযুক্ত হয়ে চূড়ান্ত প্রোগ্রামের জন্য মেশিন কোড হয়ে যায়। খুব সাধারণ প্রোগ্রামগুলির ক্ষেত্রে সংযোগের পদক্ষেপের প্রয়োজন হতে পারে না। অন্যান্য ক্ষেত্রে যেমন আইডিই (সংহত বিকাশের পরিবেশ) এর সাথে লিঙ্কার এবং সংকলক একসাথে ডাকা হতে পারে। অন্যান্য ক্ষেত্রে, একটি জটিল মেক স্ক্রিপ্ট বা সমাধান ফাইলটি চূড়ান্ত অ্যাপ্লিকেশনটি কীভাবে তৈরি করা যায় তা পরিবেশকে জানাতে ব্যবহার করা যেতে পারে।

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


24
+1: দুর্দান্ত, তবে কিছুটা সহজতর উত্তর - সমস্ত সমাবেশ নির্দেশাবলী 1: 1 মেশিনের নির্দেশিকায় অনুবাদ করা হয় না এবং অবজেক্ট ফাইলে অন্য ডেটাও থাকতে পারে (স্থানান্তরের তথ্য, প্রতীক টেবিল, ...)
ক্রিস্টোফ

5
আপনার দ্বিতীয় ইস্যুটির জন্য একটি নেজেল শব্দ যুক্ত করা হয়েছে, ২ য় বার পরিষ্কার করার জন্য সম্পাদিত।
জোয়েল কোহোর্ন

2
@ ক্রিসটফ: আপনি বলেছেন যে "সমস্ত সমাবেশ নির্দেশাবলী মেশিনের নির্দেশাবলীতে 1: 1 টি অনুবাদ হয় না" দয়া করে একটি উদাহরণ দিন।
অলিফ ফোরশেল

5
@ অলফ: আরআইএসসি আর্কিটেকচারগুলি কখনও কখনও সমাবেশ-স্তরের ভার্চুয়াল নির্দেশিকা সেট সরবরাহ করে - যেমন এমআইপিএস সিউডো-নির্দেশাবলী ( en.wikedia.org/wiki/MIP_architecture#Pseudo_instructions )
ক্রিস্টোফ

3
@ পানজারক্রিসিস অ্যাসেমব্লার দ্বারা কিছুই যোগ করা যায় না। আপনি প্রকৃত মেশিনের নির্দেশিকায় যা লিখেছিলেন তা এটি সরাসরি অনুবাদ। এবং আমি "অপ্রয়োজনীয়" সংকলক দ্বারা আনা অতিরিক্ত কোডটি কল করব না
জোয়েল কোহোর্ন

125

অন্যান্য উত্তরগুলি পার্থক্যের একটি ভাল বর্ণনা দিয়েছে তবে আপনি একটি ভিজ্যুয়াল চেয়েছিলেন। এখানে একটি চিত্র রয়েছে যা তারা সি কোড থেকে একটি নির্বাহযোগ্য পর্যন্ত যাত্রা দেখায়।


3
আমি এটি সত্যিই সহায়ক মনে করি, তবে এটি "মেশিন কোড" লেবেলটি হারিয়েছে
অ্যালেক্সেক্স রোচে

সুতরাং যখন এটি এক্সিকিউটেবল কোড স্তরে হয়, এটি কি মেশিন কোডের সমতুল্য?
সিএমসিডিগ্রাগনকাই

3
এই চিত্রের প্রসঙ্গে, "অবজেক্ট কোড" হ'ল মেশিন কোড।
গ্রাফিক্স নুব

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

@Okeyxyz কোন স্তরে এটি প্রসেসর দ্বারা সরাসরি মৃত্যুদন্ড কার্যকর করা সঠিক হবে? এসেম্বলারের পরে, লিঙ্কারের পরে, লোডার পরে, এটি মাইক্রোকন্ট্রোলারে রূপান্তরিত হওয়ার পরে?
Celeritas

49

সংসদীয় কোডটি মেশিন কোডের একটি মানব পাঠযোগ্য উপস্থাপনা:

mov eax, 77
jmp anywhere

মেশিন কোডটি খাঁটি হেক্সাডেসিমাল কোড:

5F 3A E3 F1

আমি ধরে নিলাম আপনি কোনও অবজেক্ট ফাইলে যেমন অবজেক্ট কোড বোঝাচ্ছেন। এটি মেশিন কোডের একটি বৈকল্পিক, একটি পার্থক্যের সাথে জাম্পগুলি এমনভাবে পরামিতি করা হয় যাতে কোনও লিঙ্কার তাদের পূরণ করতে পারে।

একটি এসেম্বলার অ্যাসেম্বলি কোডটি মেশিন কোডে রূপান্তর করতে ব্যবহৃত হয় (অবজেক্ট কোড) একটি লিঙ্কার একটি এক্সিকিউটেবল উত্পাদন করতে বেশ কয়েকটি অবজেক্ট (এবং লাইব্রেরি) ফাইলগুলিতে লিঙ্ক করে।

আমি একবার খাঁটি হেক্সে একটি এসেম্ব্লার প্রোগ্রাম লিখেছি (কোনও এসেমব্লার উপলব্ধ নেই) ভাগ্যক্রমে এটি ভাল পুরাতন (প্রাচীন) 6502 এ ফিরে এসেছিল But


76
না না না না. মেশিন কোড হেক্স কোড নয়। এটি খাঁটি বাইনারি হেক্স কোড বাইনারি কেবল একটি সুবিধাজনক উপস্থাপনা।
ব্রেটন

56
যদি আমরা সত্যিই চূড়ান্তভাবে যাচ্ছি তবে এটি বাইনারি নয়, এটি একটি সার্কিটের প্রচুর পরিমাণে সঞ্চিত বিদ্যুত। ;-)
টুন ক্রিজেতে

17
হ্যা অবশ্যই. সেখানে hexidecimal মধ্যে একটি সম্পর্ক হয়, এবং কি আপনি "মেশিন কোড" কল, কিন্তু এটা বলতে hexidecimal বেশ সঠিকভাবে কাজ করে না হয় মেশিন কোড। এটাই আমি বলার চেষ্টা করছি।
ব্রেটন

9
@ ব্রাইটন সেই অর্থে, "হেক্স কোড" বলে কিছু নেই? "হেক্স কোড" কেবলমাত্র মেশিন কোড দেখার একটি উপায়। আপনি মেশিন কোডটি হেক্সাডেসিমাল, বাইনারি, অক্টাল, দশমিক, অথবা আপনি পছন্দ করতে পারেন। এছাড়াও আবার সেই অর্থে, "বাইনারি কোড" পাশাপাশি নেই। আবার, "বাইনারি কোড" মেশিন কোড দেখার এক উপায় of
উত্কু

9
@ ব্রাটন আপনি যা বলছেন তা আসলে খুব একটা বোঝায় না .. বাইনারি হেক্সের মতোই উপস্থাপনের একটি উপায়। যদি এটি হেক্স না হয় তবে এটি বাইনারিও নয়।
কোরে তুগায়

18

8B 5D 32 মেশিন কোড হয়

mov ebx, [ebp+32h] সমাবেশ হয়

lmylib.soসম্বলিত 8B 5D 32অবজেক্ট কোড রয়েছে


8

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

$ 1902: বিডি 37 14: এলডিএ $ 1437, এক্স
$ 1905: 85 03: STA $ 03
$ 1907: 85 09: STA $ 09
$ 1909: সিএ: ডেক্স
$ 190 এ: 10: বিপিএল $ 1902

উপরের বিট কোডটি, যদি একটি আটারি 2600 কার্ট্রিজে $ 1900 ঠিকানায় সঞ্চিত থাকে, তবে একটি টেবিল থেকে প্রাপ্ত রঙের বিভিন্ন লাইন প্রদর্শিত হবে যা ঠিকানা starts 1437 থেকে শুরু হবে। কিছু সরঞ্জামগুলিতে, উপরের লাইনের ডানদিকের অংশ সহ একটি ঠিকানা টাইপ করা মধ্যম কলামে প্রদর্শিত মানগুলি স্মরণে রাখবে এবং নিম্নলিখিত ঠিকানা দিয়ে পরবর্তী লাইনটি শুরু করবে। এই ফর্মটিতে টাইপিং কোড হেক্সে টাইপ করার চেয়ে অনেক বেশি সুবিধাজনক ছিল তবে প্রত্যেকটির সুনির্দিষ্ট ঠিকানা জানতে হবে।

বেশিরভাগ একত্রিতকারী এককে প্রতীকী ঠিকানা ব্যবহারের অনুমতি দেয়। উপরের কোডটি আরও বেশি লেখা হবে:

rainbow_lp:
  lda কালারটিবিএল, এক্স
  স্টা ডাব্লুএসওয়াইএনসি
  স্টা ক্লাব
  Dex
  বিপিএল রংধনু_পিএল

সমাবেশকারী স্বয়ংক্রিয়ভাবে এলডিএ নির্দেশকে সামঞ্জস্য করবে তাই এটি রঙিনটিবিএল লেবেলে যে ঠিকানাটি ম্যাপ করা হয়েছিল তা উল্লেখ করবে। এসেম্বলারের এই স্টাইলটি ব্যবহার করে কোড লেখা এবং সম্পাদনা করা আরও সহজ করে তোলে যদি কারও কাছে সমস্ত ঠিকানা হ্যান্ড-কী এবং হ্যান্ড-মেইনটেন্যান্ট করতে হয়।


1
+1 টি। আরও একটি অতিরিক্ত পয়েন্ট: এছাড়াও আছে বিভিন্ন সমাবেশ ভাষা হয় syntaxes , সবচেয়ে বিখ্যাত হচ্ছে Intel ও যেমন AT & T
informatik01

1
@ ইনফরমিটিক01: ইন্টেল 8080 স্মৃতিবিদ্যার বনাম জিলোগ জেড 80 সম্পর্কে কীভাবে? আমি অনুমান করব যে ইন্টেল বনাম এটিএন্ডটি সিনট্যাক্স যুদ্ধের পূর্বাভাস দেয়।
সুপারক্যাট

বিতর্ক না করে, আমি কেবল সেই দিকটি (বিভিন্ন সিনট্যাক্স) উল্লেখ করেছি এবং দুটি সর্বাধিক জনপ্রিয় / সুপরিচিত / বিখ্যাত সিনট্যাক্সের উদাহরণ দিয়েছি।
informatik01

4

উত্স কোড, সমাবেশ কোড, মেশিন কোড, অবজেক্ট কোড, বাইট কোড, এক্সিকিউটেবল ফাইল এবং লাইব্রেরি ফাইল।

এই সমস্ত শর্তাদি প্রায়শই বেশিরভাগ মানুষের কাছে এই বিভ্রান্তিকর কারণ হয় যে তারা মনে করে যে তারা পারস্পরিক একচেটিয়া । তাদের সম্পর্কগুলি বোঝার জন্য চিত্রটি দেখুন। প্রতিটি পদটির বর্ণনা নীচে দেওয়া হয়েছে।


কোডের ধরণ


সোর্স কোড

মানব পাঠযোগ্য (প্রোগ্রামিং) ভাষায় নির্দেশাবলী


উচ্চ-স্তরের কোড

উচ্চ স্তরের (প্রোগ্রামিং) ভাষায় রচিত নির্দেশাবলী
যেমন, সি, সি ++ এবং জাভা প্রোগ্রাম


সমাবেশ কোড

একটি সমাবেশ ভাষায় লিখিত নির্দেশাবলী (নিম্ন স্তরের প্রোগ্রামিং ভাষার ধরণের)। সংকলন প্রক্রিয়ার প্রথম ধাপ হিসাবে, উচ্চ-স্তরের কোডটি এই ফর্মটিতে রূপান্তরিত হয়। এটি অ্যাসেম্বলি কোড যা পরে প্রকৃত মেশিন কোডে রূপান্তরিত হচ্ছে। বেশিরভাগ সিস্টেমে, এই দুটি পদক্ষেপ সংকলন প্রক্রিয়ার অংশ হিসাবে স্বয়ংক্রিয়ভাবে সঞ্চালিত হয়।
যেমন, program.asm


অবজেক্ট কোড

সংকলন প্রক্রিয়াটির পণ্য। এটি মেশিন কোড বা বাইট কোড আকারে হতে পারে।
যেমন, file.o


মেশিন কোড

যন্ত্রের ভাষায় নির্দেশনা।
যেমন, আউটআউট


বাইট কোড

একটি মধ্যবর্তী ফর্মের নির্দেশ যা জেভিএম এর মতো দোভাষী দ্বারা সম্পাদন করা যেতে পারে।
যেমন জাভা ক্লাস ফাইল class


এক্সিকিউটেবল ফাইল

সংযোগ প্রসেসের পণ্য। এগুলি মেশিন কোড যা সরাসরি সিপিইউ দ্বারা চালিত হতে পারে।
উদাহরণস্বরূপ, একটি .exe ফাইল।

দ্রষ্টব্য যে কিছু প্রসঙ্গে বাইট-কোড বা স্ক্রিপ্টিং ভাষার নির্দেশাবলী সম্বলিত একটি ফাইলকে কার্যকরও বিবেচনা করা যেতে পারে।


গ্রন্থাগার ফাইল

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


1
আমি যুক্তি দিয়ে বলব যে সমস্ত সমাবেশই কোড দ্বারা লিখিত এবং / অথবা মানুষের দ্বারা রক্ষণাবেক্ষণের কঠোরতম অর্থে সত্যই উত্স নয়। প্রায়শই এটি উত্স থেকে মেশিন দ্বারা উত্পাদিত হয় এবং মানব সেবনের জন্য কখনই উদ্দিষ্ট হয় না (উদাহরণস্বরূপ, জিসিসি বাস্তবায়িতভাবে এসএম টেক্সট তৈরি করে যা এটি নির্বাহের অভ্যন্তরে বিল্ট-ইন এসেমব্লার রাখার পরিবর্তে পৃথক এসেমব্লারকে ফিড করে cc1)। আমি মনে করি asm বৃত্তটি "উত্স" বৃত্তের বাম দিকটি আটকা উচিত, কারণ কিছু asm কেবল asm হয়, উত্স নয়। এটি অবশ্যই কোডের কোনও বিষয় নয়, তবে কিছু কিছু আসাম উত্স থেকে ফাইলগুলি আপত্তি করার পথে এক ধাপ।
পিটার কর্ডেস

@ পিটারকার্ডস মন্তব্যের জন্য আপনাকে অনেক ধন্যবাদ। আপনি সিসিটির কাজ সম্পর্কে কী বলেছেন তা সম্পর্কে আমি অবগত ছিলাম না। তবে আমি আপনার সাথে পুরোপুরি একমত হতে পারলে আমি ভয় করি am আমার অর্থ হ'ল, সোর্স কোড হ'ল এমন কিছু যা মানব-পঠনযোগ্য প্রোগ্রামিং ভাষা ব্যবহার করে রচিত। এটি মানুষের লেখা বা রক্ষণাবেক্ষণ হতে পারে বা নাও হতে পারে। আমি নিশ্চিত যে আপনি ট্রান্সকোম্পিলার সম্পর্কে সচেতন হবেন। আপনার দৃষ্টিকোণ থেকে আপনি এই ধরণের সংকলকটির পণ্যটি কোন বিভাগে রাখবেন? সোর্স কোড নাকি অন্য কিছু? আমি ভুল হলে আমাকে সংশোধন করুন। আরও মন্তব্য সর্বদা স্বাগত।
বার্টরাম গিলফোল 13

1

বিধানসভা কোড এখানে আলোচনা করা হয়

"একটি সংসদীয় ভাষা প্রোগ্রামিং কম্পিউটারগুলির জন্য একটি নিম্ন-স্তরের ভাষা It এটি একটি নির্দিষ্ট সিপিইউ আর্কিটেকচার প্রোগ্রাম করার জন্য সংখ্যক মেশিন কোড এবং অন্যান্য ধ্রুবকের প্রতীকী উপস্থাপনা প্রয়োগ করে।"

মেশিন কোড এখানে আলোচনা করা হয়

"মেশিন কোড বা মেশিন ল্যাঙ্গুয়েজ হ'ল নির্দেশাবলী এবং ডেটা সিস্টেমের কম্পিউটারের কেন্দ্রীয় প্রক্রিয়াকরণ ইউনিট দ্বারা সরাসরি সম্পাদন করে।"

মূলত, এসেম্বলারের কোডটি ভাষা এবং এটি একটি এসেম্বলারের দ্বারা (কোনও সংকলকের সমতুল্য) অবজেক্ট কোডে (সিপিইউ চালিত নেটিভ কোড) অনুবাদ করা হয়।


1

আমি মনে করি এগুলিই মূল পার্থক্য

  • কোড পাঠযোগ্যতা
  • আপনার কোড কী করছে তার উপর নিয়ন্ত্রণ করুন

পাঠ্যযোগ্যতা কোডটি লিটট প্রয়াসের সাথে তৈরি হওয়ার 6 মাস পরে উন্নত বা প্রতিস্থাপন করতে পারে, অন্যদিকে, যদি পারফরম্যান্স সমালোচনা হয় তবে আপনি যে নির্দিষ্ট হার্ডওয়্যার উত্পাদন করতে পারবেন তা লক্ষ্য রাখতে আপনি নিম্ন স্তরের ভাষা ব্যবহার করতে চাইতে পারেন, তাই পেতে দ্রুত সম্পাদন

আইএমও আজ কম্পিউটারগুলি ওপিওপি দিয়ে কোনও প্রোগ্রামারকে দ্রুত সম্পাদন করার জন্য পর্যাপ্ত দ্রুত।


1

সমাবেশ হ'ল সংক্ষিপ্ত বর্ণনামূলক পদ যা মানুষ বুঝতে পারে যে কোনও সিপিইউ আসলে ব্যবহার করে এমন মেশিন কোডে সরাসরি অনুবাদ করা যায়।

মানুষের দ্বারা কিছুটা বোধগম্য হলেও এসেমব্লার এখনও নিম্ন স্তরের। দরকারী কিছু করতে অনেক কোড লাগে।

সুতরাং পরিবর্তে আমরা উচ্চ স্তরের ভাষা যেমন সি, বেসিক, ফরটান (ঠিক আছে আমি জানি আমি নিজেকে তারিখ দিয়েছি) ব্যবহার করি। যখন এই উত্পাদনের অবজেক্ট কোডটি সংকলিত হয়। প্রাথমিক ভাষাগুলিতে তাদের অবজেক্ট কোড হিসাবে মেশিনের ভাষা ছিল।

আজকের অনেক ভাষা সাধারণত এই জাতীয় জাভা এবং সি # সাধারণত একটি বাইটোকডে সংকলন করে যা মেশিন কোড নয়, তবে এমন একটি যা মেশিন কোড তৈরির জন্য রান সময়ে সহজেই ব্যাখ্যা করা যায়।


জাভা এবং সি # সম্পর্কে আপনার মন্তব্য - উভয়ই জাস্ট ইন টাইম সংকলনটি ব্যবহার করে যাতে বাইটকোডগুলি ব্যাখ্যা না করে। সি # (। নেট সাধারণত) ইন্টারমিডিয়েট ল্যাঙ্গুয়েজে (আইএল) সংকলন করে যা লক্ষ্য সিপিইউর জন্য স্থানীয় মেশিনের ভাষায় জেআইটিড হয়।
ক্রেগ শিয়েরার

-1

আপনার প্রোগ্রামগুলির উত্স ফাইলগুলি অবজেক্ট ফাইলগুলিতে সংকলিত হয় এবং তারপরে লিংককারী সেই বস্তু ফাইলগুলিকে একসাথে লিঙ্ক করে আপনার আর্কিটেকচারের মেশিন কোডগুলি সহ একটি এক্সিকিউটেবল ফাইল তৈরি করে।

টেক্সট এডিটর দ্বারা খোলার সময় অবজেক্ট ফাইল এবং এক্সিকিউটেবল ফাইল উভয়ই আর্কিটেকচারের মেশিন কোড মুদ্রণযোগ্য এবং অ-মুদ্রণযোগ্য অক্ষরের আকারে জড়িত।

তবুও, ফাইলগুলির মধ্যে দ্বৈতত্ত্বটি হ'ল অবজেক্ট ফাইল (গুলি) এ অমীমাংসিত বাহ্যিক উল্লেখ থাকতে পারে (যেমন printf, উদাহরণস্বরূপ)। সুতরাং, এটি অন্য অবজেক্ট ফাইলগুলির সাথে সংযুক্ত করার প্রয়োজন হতে পারে .. এর অর্থ হল, সি / সি ++ রানটাইম লাইব্রেরির মতো অন্যান্য অবজেক্ট ফাইলগুলির সাথে সংযুক্ত করে শালীন চালানোযোগ্য এক্সিকিউটেবল ফাইলটি পাওয়ার জন্য সমাধান না হওয়া সমাধান হওয়া দরকার external ।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.