এটি হল কমান্ড স্পিম যা আমাদের একাধিক বিনামূল্যের অনলাইন ওয়ার্কস্টেশন যেমন উবুন্টু অনলাইন, ফেডোরা অনলাইন, উইন্ডোজ অনলাইন এমুলেটর বা MAC OS অনলাইন এমুলেটর ব্যবহার করে OnWorks ফ্রি হোস্টিং প্রদানকারীতে চালানো যেতে পারে।
কার্যক্রম:
NAME এর
spim - একটি MIPS32 সিমুলেটর
বাক্য গঠন
স্পিম [-asm/-খালি -ব্যতিক্রম/-অব্যতিক্রম -শান্ত/-শান্ত
-mapped_io/-nomapped_io
-বিলম্বিত_শাখা -বিলম্বিত_লোড
-পাঠ্য আয়তন -এসডেটা আয়তন -স্ট্যাক আয়তন -স্কটেক্সট আয়তন -স্কডেটা আয়তন
-ldata আয়তন -লস্ট্যাক আয়তন -lkdata আয়তন
-file ফাইল -এক্সিকিউট ফাইল ]
বর্ণনাঃ
SPIM S20 হল একটি সিমুলেটর যা MIPS32 RISC কম্পিউটারের জন্য প্রোগ্রাম চালায়। SPIM পড়তে পারেন
এবং অবিলম্বে অ্যাসেম্বলি ল্যাঙ্গুয়েজ বা MIPS এক্সিকিউটেবল ফাইল ধারণকারী ফাইলগুলি চালান। SPIM
এই প্রোগ্রামগুলি চালানোর জন্য একটি স্বয়ংসম্পূর্ণ সিস্টেম এবং এতে একটি ডিবাগার রয়েছে এবং
কয়েকটি অপারেটিং সিস্টেম পরিষেবার ইন্টারফেস।
SPIM দুটি সংস্করণে আসে। প্লেইন সংস্করণ বলা হয় স্পিম. এটা যে কোন ধরনের উপর সঞ্চালিত হয়
টার্মিনাল এটি এই ধরণের বেশিরভাগ প্রোগ্রামের মতো কাজ করে: আপনি পাঠ্যের একটি লাইন টাইপ করুন, আঘাত করুন
প্রত্যাবর্তন কী, এবং স্পিম আপনার আদেশ কার্যকর করে। SPIM এর অভিনব সংস্করণ বলা হয় xspim.
এটি এক্স-উইন্ডো সিস্টেম ব্যবহার করে, তাই এটি চালানোর জন্য আপনার অবশ্যই একটি বিট-ম্যাপ করা ডিসপ্লে থাকতে হবে। xspim,
যাইহোক, এটি শিখতে এবং ব্যবহার করার জন্য অনেক সহজ প্রোগ্রাম কারণ এর কমান্ডগুলি সর্বদা দৃশ্যমান
পর্দায় এবং কারণ এটি ক্রমাগত মেশিনের রেজিস্টার প্রদর্শন করে।
বিকল্প
স্পিম অনেক বিকল্প আছে:
-asm অ্যাসেম্বলার দ্বারা প্রদত্ত ভার্চুয়াল MIPS মেশিন অনুকরণ করুন। এই হল
ডিফল্ট.
-বেয়ার ছদ্ম-নির্দেশ বা অতিরিক্ত ছাড়াই একটি খালি এমআইপিএস মেশিন অনুকরণ করুন
অ্যাসেম্বলার দ্বারা প্রদত্ত অ্যাড্রেসিং মোড। বোঝায় - শান্ত.
- ব্যতিক্রম
স্ট্যান্ডার্ড ব্যতিক্রম হ্যান্ডলার এবং স্টার্টআপ কোড লোড করুন। এটি ডিফল্ট।
-এর ব্যতিক্রম
স্ট্যান্ডার্ড ব্যতিক্রম হ্যান্ডলার এবং স্টার্টআপ কোড লোড করবেন না। এই ব্যতিক্রম
হ্যান্ডলার ব্যতিক্রম পরিচালনা করে। একটি ব্যতিক্রম ঘটলে, SPIM অবস্থানে ঝাঁপিয়ে পড়ে
0x80000080, যা অবশ্যই ব্যতিক্রম পরিষেবার জন্য কোড ধারণ করবে। উপরন্তু, এই
ফাইলটিতে স্টার্টআপ কোড রয়েছে যা রুটিনকে আহ্বান করে প্রধান. স্টার্টআপ ছাড়া
রুটিন, SPIM লেবেল করা নির্দেশে কার্যকর করা শুরু করে __শুরু.
- শান্ত একটি ব্যতিক্রম ঘটলে একটি বার্তা প্রিন্ট করুন। এটি ডিফল্ট।
-শান্ত ব্যতিক্রম এ একটি বার্তা প্রিন্ট করবেন না.
-mapped_io
মেমরি-ম্যাপ করা IO সুবিধা সক্রিয় করুন। যে প্রোগ্রামগুলি পড়ার জন্য SPIM syscalls ব্যবহার করে
টার্মিনাল থেকে না পারেন এছাড়াও মেমরি-ম্যাপ করা IO ব্যবহার করুন।
-nomapped_io
মেমরি-ম্যাপ করা IO সুবিধা অক্ষম করুন।
-বিলম্বিত_শাখা
MIPS-এর বিলম্বিত কন্ট্রোল ট্রান্সফার সিমুলেট করুন ক-এর পর নির্দেশ কার্যকর করে
নিয়ন্ত্রণ স্থানান্তর করার আগে শাখা, লাফ, বা কল. SPIM এর ডিফল্ট হল
অ-বিলম্বিত স্থানান্তর অনুকরণ করুন, যদি না -বেয়ার পতাকা সেট করা হয়।
-বিলম্বিত_লোড
MIPS এর আসল, নন-ইন্টারলকড লোড নির্দেশাবলী অনুকরণ করুন। SPIM এর ডিফল্ট
অ-বিলম্বিত লোড অনুকরণ করতে, যদি না -বেয়ার পতাকা সেট করা হয়।
-পাঠ্য আয়তন -এসডেটা আয়তন -স্ট্যাক আয়তন -স্কটেক্সট আয়তন -স্কডেটা আয়তন
মেমরি সেগমেন্ট সেগের প্রাথমিক আকার সেট করে আয়তন বাইট স্মৃতি
বিভাগগুলির নাম দেওয়া হয়েছে: পাঠ, উপাত্ত, গাদা, ktext, এবং kdata. দ্য পাঠ রেখাংশ
একটি প্রোগ্রাম থেকে নির্দেশাবলী রয়েছে। দ্য উপাত্ত সেগমেন্ট প্রোগ্রাম এর ঝুলিতে
তথ্য। দ্য গাদা সেগমেন্ট তার রানটাইম স্ট্যাক ধারণ করে। চালানোর পাশাপাশি ক
প্রোগ্রাম, SPIM সিস্টেম কোডও চালায় যা বাধা এবং ব্যতিক্রমগুলি পরিচালনা করে।
এই কোড ঠিকানা স্থানের একটি পৃথক অংশে থাকে যাকে বলা হয় শাঁস.
সার্জারির ktext সেগমেন্ট এই কোডের নির্দেশাবলী ধারণ করে এবং kdata তার ডেটা ধারণ করে।
এমন কিছু নেই kstack সেগমেন্ট যেহেতু সিস্টেম কোড একই স্ট্যাক ব্যবহার করে
কার্যক্রম. যেমন জোড়া যুক্তি -এসডেটা 2000000 ব্যবহারকারীর ডেটা শুরু করে
2,000,000 বাইটে সেগমেন্ট।
-ldata আয়তন -লস্ট্যাক আয়তন -lkdata আয়তন
কত বড় মেমরি সেগমেন্টের সীমা সেট করে সোম হতে বাড়তে পারে আয়তন বাইট দ্য
মেমরি সেগমেন্ট যে বাড়তে পারে উপাত্ত, গাদা, এবং kdata.
-file ফাইল
আর্গুমেন্ট সহ ফাইলে এসেম্বলি কোড লোড করুন এবং এক্সিকিউট করুন .
-এক্সিকিউট ফাইল
MIPS লোড করুন এবং চালান এক্সিকিউটেবল (a.out) আর্গুমেন্ট সহ ফাইল । কেবল
একটি MIPS প্রসেসর ব্যবহার করে সিস্টেমে কাজ করে।
onworks.net পরিষেবা ব্যবহার করে অনলাইনে স্পিম ব্যবহার করুন