65535 নম্বরটি সম্পর্কে বিশেষ কিছু আছে?


11

2¹⁶-1 এবং 2⁵ = 2⁵ (বা স্পষ্টভাবে?)

একজন বিকাশকারী আমাকে আজ জিজ্ঞাসা করলেন বিটওয়াইজ 65535 এবং 32 অর্থাত 2¹⁶-1 এবং 2⁵ =? আমি প্রথমে স্বতঃস্ফূর্তভাবে 32 টি ভেবেছিলাম তবে এটি বেশ সহজ বলে মনে হয়েছিল যার পরে আমি বেশ কয়েক মিনিট ধরে ভাবলাম এবং তারপরে 32 টি উত্তর দিয়েছি 32 32 মনে হয় সঠিক উত্তর হয়েছে তবে কীভাবে? 65535 = 2¹⁶-1 = 111111111111111111 (তবে এই বাইনারি সংখ্যাটি যেহেতু সমস্ত -1 (?)) হওয়া উচিত তা ঠিক মনে হচ্ছে না, 32 = 100000 তবে আমি আমার মাথায় সেই রূপান্তর করতে পারিনি যার পরে আমি যাইহোক 32 উত্তর দিয়েছি কিছু উত্তর দিতে। উত্তরটি কি আসলে তুচ্ছ? একই ভাবে 2¹⁶-1 এবং 2⁵-1 = 31? বিকাশকারী আমাকে ঠিক 65535 সম্পর্কে জিজ্ঞাসা করলেন কেন?

বাইনারি আমাকে যা মূল্যায়ন করতে বলা হয়েছিল তা 111111111111111111 এবং 100000 তবে কেন 111111111111111111 -1 নয় তা আমি বুঝতে পারি না। এটি -1 হওয়া উচিত নয়? 65535 এমন একটি সংখ্যা যা ওভারফ্লো দেয় এবং আমি কীভাবে তা জানি?


3
বিশেষ কিছু থাকতে হবে। এটি আমাকে বিয়ারের জন্য চেক জাতীয় স্ট্যান্ডার্ড 35 6635 এর কথা মনে করিয়ে দেয়। হুমমম ... বিয়ারের সময় time
জোশপ

5
আপনি অনেক বেশি অনুমান করেছেন: 65535 কেবল -1 বিট টু এর পরিপূরক পাটিগণিতগুলিতে -1 দেয়। এটি 16-বিটের কারও পরিপূরক পাটিগণিতগুলিতে -0 এবং 32-বিট টু এর পরিপূরক এবং একটির পরিপূরক গাণিতিকগুলিতে 65535 দেয়।
mouviciel

3
এটি টিসিপি বন্দরগুলির উপরের সীমা।
রেনে লিডার

উত্তর:


23

সংখ্যাটি এই ক্ষেত্রে স্বাক্ষরবিহীন পূর্ণসংখ্যার হিসাবে বিবেচিত হয় যার অর্থ সমস্ত সেট সেট বিট -1 উত্পাদন করে না (যদি এটি স্বাক্ষরিত হয় তবে হ্যাঁ, আপনি সঠিক হবে)। সুতরাং সেট 16 বিট আপনাকে 65535 দেবে।

মজার ব্যাপার যদিও যথেষ্ট, যুক্তি বিট-অপারেশন করার সময় স্বাক্ষরিত রাষ্ট্রটি কোনও ফ্যাক্টর নয়। বিটগুলি সেগুলিতে স্বাক্ষরিত হয় না কারণ তারা কম্পিউটারে সর্বনিম্ন উপাদান। এটি সিপিইউ অপারেশন দ্বারা নির্দিষ্ট করা হয় যদি বিটগুলি প্রাক্তন থাকে। একটি রেজিস্টার স্বাক্ষরিত বা স্বাক্ষরবিহীন হিসাবে বিবেচিত হবে।

Significantণাত্মক সংখ্যার সর্বাধিক তাৎপর্যপূর্ণ বিট (এমএসবি) সেট করার মাধ্যমে উত্পাদিত হয় যদি নম্বরটি স্বাক্ষর হিসাবে বিবেচনা করা হয় (যা "পাশ", বা কোন বাহ্যিক বিট সেট করা হবে তা সিপিইউ আর্কিটেকচারের উপর নির্ভর করে, যেমন বিগ-এন্ডিয়ান / লিটল-এন্ডিয়ান )।


9
বেশিরভাগ আধুনিক মেশিনগুলি বিটগুলি উল্টিয়ে এবং একটি: 2 এর পরিপূরক যোগ করে নেতিবাচক রূপান্তরিত করে। কেবল একটি বিট সেট করা আপনাকে +0 এবং -0 থাকার সমস্যা দেয়।
জেমস

1
এটি অগত্যা কোনও সমস্যা নয়। 1 এর পরিপূরক ফলাফল লক্ষণ নির্বিশেষে শূন্যের দিকে কমিয়ে দেয়। 2 এর পরিপূরকগুলি -অফিনিটির দিকে কমিয়ে দেয়। নির্দিষ্ট অ্যাপ্লিকেশনগুলিতে এটি আপনাকে সমস্যায় ফেলতে পারে।
জন আর স্ট্রোহম

18

এটা তোলে হয় তুচ্ছ। বাইনারিতে 65535 হ'ল সমস্ত, সুতরাং এটি 65535 এর চেয়ে কম কোনও এক্স সহ এন্ডিং করা আপনাকে এক্স দেয় will


10

আপনার প্রশ্নের দ্বিতীয় অংশের উত্তর দেওয়া। আপনি এটি হিসাবে ট্যাগ করেছেনসুতরাং, 32 বিটগুলিতে 65535 হ'ল 00000000000000001111111111111111, স্বাক্ষরিত বা স্বাক্ষরযুক্ত এটি -1 নয়

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