اولین بار است که به این وب‌سایت می‌آیید. راهنما را مطالعه کنید!
x
موسسه خیریه محک

شهر ریاضی بازی-ریاضی

مقایسه‌ی کارایی unsigned int و int

+1 امتیاز
310 نمایش

حالتی هست که کارایی unsigned int و int تفاوتی داشته باشه؟

هیچ پژوهش انسانی نمی‌تواند ادعای علمی بودن داشته باشد، مگر این‌که از برهان ریاضی برخوردار باشد (لئوناردو داوینچی)
پرسیده شده سه شنبه ۲۲ مرداد ۱۳۹۲ در C++ توسط prodo  

1 پاسخ

+1 امتیاز
 
بهترین پاسخ

حداقل یک حالت روشن وجود داره. برای تقسیم. مثلاً برای تقسیم عدد بر توانی از ۲ دو حالت رو داریم.
برای unsigned int تقسیم بر توانی از ۲ به یک دستور شیفت تبدیل می‌شه

unsigned int ui;
ui / 8 === ui << 3

که در زبان ماشین معادل یک دستور محاسباتی هست (به علاوه‌ی یک دستور انتقالی)
برای int تقسیم بر توانی از ۲ به این راحتی نمی‌شه عمل کرد چون ممکنه عدد منفی باشه. و در این صورت

int i;
i / 8 !== i << 3
هیچ پژوهش انسانی نمی‌تواند ادعای علمی بودن داشته باشد، مگر این‌که از برهان ریاضی برخوردار باشد (لئوناردو داوینچی)
پاسخ داده شده سه شنبه ۲۲ مرداد ۱۳۹۲ توسط prodo  
بازدید شده سه شنبه ۲۲ مرداد ۱۳۹۲ توسط admin

دیدگاه آزمایشی