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