Transcript Document

‫فصل اول‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫•‬
‫مطالب فصل‬
‫– مقادیر دودویی یا باینری‬
‫– واحدهای مختلف اندازهگیری حافظه‬
‫– نمایش اعداد منفی‬
‫– تبدیل مقادیر باینری به مبنای ده و برعکس‬
‫– نمایش مقادیر عددی در مبنای شانزده‬
‫– نمایش مقادیر عددی در مبنای هشت‬
‫– تبدیل مقادیر از مبنای ده به مبنای هشت و برعکس‬
‫– تبدیل مقادیر از مبنای شانزده به مبنای ده و برعکس‬
‫– تبدیل مقادیر از مبنای شانزده به مبنای هشت و برعکس‬
‫‪2‬‬
‫مبنای ‪ 10‬و مبنای ‪2‬‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫•‬
‫مبنای ‪ ،10‬اساس کار بشر‬
‫– تعداد ‪ 10‬عدد انگشت‬
‫•‬
‫مبنای ‪ ،2‬اساس کار کامپیوتر‬
‫– سیگنال خاموش‪/‬روشن‬
‫•‬
‫تبدیل مبنای ‪ 10‬به مبنای ‪2‬‬
‫– تقسیم متوالی عدد بر ‪2‬‬
‫– استفاده معکوس از باقیمانده های تولید شده‬
‫– مثال‪ :‬نمایش عدد ‪ 50‬در مبنای ‪2‬‬
‫‪3‬‬
‫تبدیل مبنای ‪ 2‬به مبنای ‪10‬‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫ارزش مکانی رقم‬
‫•‬
‫– سمت راست کم ارزش‪ :‬اندیس ‪0‬‬
‫– سمت چپ پر ارزش‬
‫•‬
‫تبدیل از مبنای ‪ 2‬به مبنای ‪10‬‬
‫– ضرب رقم در ارزش مکانی رقم‪2‬‬
‫– ‪2n-1 ،... ،23 ،22 ،21 ،20‬‬
‫– جمع مقادیر به دست آمده‬
‫•‬
‫مثال‬
‫– عدد ‪11010‬‬
‫‪4‬‬
‫دیگر مثالها‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫•‬
‫تبدیل ‪ 37‬به ‪100101‬‬
‫•‬
‫تبدیل ‪ 1101101‬به ‪109‬‬
‫‪5‬‬
‫جمع و تفریق اعداد مبنای ‪2‬‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫•‬
‫مشابه مبنای ‪10‬‬
‫– رقم نقلی (‪)Carry‬‬
‫– رقم قرض ی (‪)Borrow‬‬
‫•‬
‫مثال‬
‫– جمع عدد ‪ 10‬با ‪ 3‬در مبنای ‪2‬‬
‫‪6‬‬
‫جمع و تفریق در مبنای ‪2‬‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫•‬
‫‪20 + 17‬‬
‫•‬
‫تفریق در مبنای ‪2‬‬
‫‪7‬‬
‫بایت‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫•‬
‫بیت‬
‫– کوچکترین واحد حافظه‬
‫– ‪ 0‬یا ‪1‬‬
‫– مخفف ‪Binary Digit‬‬
‫– نمایش با ‪b‬‬
‫•‬
‫بایت‬
‫– ‪ 8‬بیت پشت سر هم‬
‫–‬
‫–‬
‫–‬
‫–‬
‫‪8‬‬
‫بیت سمت راست‪ :‬کم ارزشترین بیت (‪)LSB‬‬
‫بیت سمت چپ‪ :‬پر ارزشترین بیت (‪)MSB‬‬
‫هر بایت ‪ 256‬حالت مختلف دارد (‪)28‬‬
‫قرار دادن اعداد ‪ 0‬تا ‪ 255‬در یک بایت‬
‫مقادیر منفی‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫•‬
‫استفاده از بیت عالمت‬
‫– بیت سمت چپ‪ ،‬بیت عالمت‬
‫– ‪ :0‬عدد مثبت‬
‫– ‪ :1‬عدد منفی‬
‫روش مکمل ‪1‬‬
‫•‬
‫– مزیت‪ :‬تنها نیاز به یک مدار برای عمل جمع و تفریق است‪.‬‬
‫– عیب‪ :‬عیب وجود دو عدد ‪ +0‬و ‪-0‬‬
‫– محدوده بین ‪ -127‬تا ‪+127‬‬
‫روش مکمل ‪2‬‬
‫•‬
‫–‬
‫–‬
‫–‬
‫–‬
‫تبدیل حالت مثبت عدد به مبنای ‪2‬‬
‫قرار دادن تعدادی ‪ 0‬در سمت چپ عدد (تا تعداد ارقام مضربی از ‪ 8‬شود)‬
‫محاسبه مکمل ‪ 1‬عدد (تبدیل ‪ 0‬به ‪ 1‬و ‪ 1‬به ‪)0‬‬
‫جمع عدد بدست آمده با عدد ‪1‬‬
‫– مزیت‪ :‬تنها نیاز به یک مدار برای عمل جمع و تفریق است و نیز تنها یک عدد ‪ 0‬وجود دارد‪.‬‬
‫‪9‬‬
‫مثال عدد منفی‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫•‬
‫تبدیل عدد ‪ -26‬به مبنای ‪2‬‬
‫– ابتدا تبدیل ‪ 26‬به مبنای ‪2‬‬
‫– سپس افزودن تعدادی بیت‬
‫– سپس مکمل کردن عدد‬
‫– در نهایت افزودن عدد ‪ 1‬به مقدار به دست آمده‬
‫– در مکمل ‪ MSB ،2‬همیشه ‪ 1‬است‪.‬‬
‫‪10‬‬
‫مثال عدد منفی‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫•‬
‫تبدیل عدد ‪ -35‬به مبنای ‪2‬‬
‫– ابتدا تبدیل ‪ 35‬به مبنای ‪2‬‬
‫– سپس افزودن تعدادی بیت‬
‫– سپس مکمل کردن عدد‬
‫– در نهایت افزودن عدد ‪ 1‬به مقدار به دست آمده‬
‫‪11‬‬
‫تبدیل عدد منفی مبنای ‪ 2‬به مبنای ‪10‬‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫•‬
‫مراحل‬
‫– محاسبه مکمل ‪1‬‬
‫– افزودن عدد ‪ 1‬به حاصل‬
‫– بردن عدد به مبنای ‪10‬‬
‫– قرار دادن عالمت – پشت عدد به دست آمده‬
‫‪11011101  00100010  00100011  35  -35‬‬
‫‪12‬‬
‫مثال از تفریق (جمع عدد منفی)‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫•‬
‫محاسبه مقدار ‪27-20‬‬
‫– معادل با (‪27 + )-20‬‬
‫‪10100  00010100  11101011  11101100‬‬
‫‪13‬‬
‫گروهبندی بیتها‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫•‬
‫بایت (‪)Byte‬‬
‫– ‪ 8‬بیت کنار هم‬
‫•‬
‫کلمه (‪)Word‬‬
‫–‬
‫–‬
‫–‬
‫–‬
‫•‬
‫‪ 2‬بایت کنار هم (‪ 16‬بیت)‬
‫در برخی کامپیوتر ‪ 4‬بایت است‬
‫بایت سمت راست‪ :‬بایت مرتبه پایین‬
‫بایت سمت چپ‪ :‬بایت مرتبه باال‬
‫کلمه مضاعف (‪)Double Word‬‬
‫– ‪ 4‬بایت کنار هم (‪ 32‬بیت)‬
‫•‬
‫‪Quad Word‬‬
‫– ‪ 8‬بایت کنار هم (‪ 64‬بیت)‬
‫•‬
‫‪TenByte‬‬
‫– ‪ 10‬بایت کنار هم (‪ 80‬بیت)‬
‫‪14‬‬
‫محدوده عالمتدار و بدون عالمت‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫‪15‬‬
‫رقم نقلی و رقم قرض ی‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫•‬
‫عملیات بیتی‬
‫‪16‬‬
‫مبنای ‪16‬‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫•‬
‫اعداد ‪ 0‬تا ‪15‬‬
‫– ‪9 ،8 ،7 ،6 ،5 ،4 ،3 ،2 ،1 ،0‬‬
‫– ‪F ،E ،D ،C ،B ،A‬‬
‫•‬
‫تبدیل عدد از مبنای ‪ 10‬به مبنای ‪16‬‬
‫– تقسیم متوالی عدد بر عدد ‪16‬‬
‫– مثال‪ :‬عدد ‪ 176‬را به مبنای ‪ 16‬ببرید‪.‬‬
‫– حاصل‪AE :‬‬
‫– مثال‪ :‬عدد ‪ 3740‬را به مبنای ‪ 16‬ببرید‪.‬‬
‫– حاصل ‪E9C‬‬
‫‪17‬‬
‫مبنای ‪( 16‬ادامه)‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫•‬
‫تبدیل عدد از مبنای ‪ 16‬به مبنای ‪10‬‬
‫–‬
‫–‬
‫–‬
‫–‬
‫•‬
‫ضرب هر رقم در ‪ 16‬به توان ارزش مکانی رقم‬
‫ضرب رقم در ارزش مکانی رقم‪16‬‬
‫‪16n-1 ،... ،163 ،162 ،161 ،160‬‬
‫جمع مقادیر به دست آمده‬
‫مثال‬
‫– عدد ‪ 2AF5‬را به مبنای ‪ 16‬ببرید‪.‬‬
‫– حاصل‪10997 :‬‬
‫‪18‬‬
‫مبنای ‪ 16‬و مبنای ‪2‬‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫•‬
‫مبنای ‪16‬‬
‫– هر رقم‪ 4 :‬بیت‬
‫– ‪24 = 16‬‬
‫– نمایش هر رقم مبنای ‪ 16‬با ‪ 4‬بیت‬
‫•‬
‫تبدیل مبنای ‪ 2‬به مبنای ‪ 16‬و برعکس‬
‫– استفاده از مقادیر روبرو‬
‫•‬
‫مثال‬
‫•‬
‫مثال‬
‫‪19‬‬
‫مبنای ‪8‬‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫•‬
‫اعداد ‪ 0‬تا ‪7‬‬
‫– ‪7 ،6 ،5 ،4 ،3 ،2 ،1 ،0‬‬
‫•‬
‫تبدیل عدد از مبنای ‪ 10‬به مبنای ‪8‬‬
‫– تقسیم متوالی عدد بر عدد ‪8‬‬
‫– مثال‪ :‬عدد ‪ 4260‬را به مبنای ‪ 8‬ببرید‪.‬‬
‫– حاصل‪10244 :‬‬
‫•‬
‫تبدیل عدد از مبنای ‪ 8‬به مبنای ‪10‬‬
‫–‬
‫–‬
‫–‬
‫–‬
‫•‬
‫ضرب هر رقم در ‪ 8‬به توان ارزش مکانی رقم‬
‫ضرب رقم در ارزش مکانی رقم‪8‬‬
‫‪8n-1 ،... ،83 ،82 ،81 ،80‬‬
‫جمع مقادیر به دست آمده‬
‫مثال‬
‫– عدد ‪ 4327‬را به مبنای ‪ 8‬ببرید‪.‬‬
‫– حاصل‪2263 :‬‬
‫‪20‬‬
‫مبنای ‪ 8‬و مبنای ‪2‬‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫•‬
‫مبنای ‪8‬‬
‫– هر رقم‪ 3 :‬بیت‬
‫– ‪23 = 8‬‬
‫– نمایش هر رقم مبنای ‪ 8‬با ‪ 3‬بیت‬
‫•‬
‫تبدیل مبنای ‪ 2‬به مبنای ‪ 8‬و برعکس‬
‫– استفاده از مقادیر روبرو‬
‫•‬
‫مثال‬
‫•‬
‫مثال‬
‫‪21‬‬
‫مبنای ‪ 8‬و مبنای ‪16‬‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫•‬
‫تبدیل از مبنای ‪ 8‬به مبنای ‪ 16‬و برعکس‬
‫– تبدیل از مبنای مبدا به مبنای ‪2‬‬
‫– تبدیل از مبنای ‪ 2‬به مبنای مقصد‬
‫•‬
‫مثال‬
‫– عدد ‪ 2AFB5‬را از مبنای ‪ 16‬به مبنای ‪ 8‬ببرید‬
‫– حاصل‪527665 :‬‬
‫‪22‬‬
‫مقادیر اعشاری‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫•‬
‫تبدیل عدد اعشاری از مبنای ‪ 10‬به مبنای ‪2‬‬
‫– قسمت صحیح‪ :‬مانند قبل‬
‫– قسمممت اعشمماری‪ :‬ضممرب متمموالی قسمممت اعشمماری در عممدد ‪ ،2‬اسممتفاده از قسمممت صممحیح بدسممت آمممده‪ ،‬جممدا سممازی قسمممت‬
‫صحیح حاصل و ادامه کار تا زمانی که بعد از ضرب به عدد ‪ ،1‬یا به تناوب برسیم‪.‬‬
‫•‬
‫مثال‬
‫– عدد ‪ 14.725‬را به مبنای ‪ 2‬ببرید؟‬
‫– عدد ‪ 14‬معادل ‪ 1110‬است‪.‬‬
‫– حاصل‪1110.1011100 :‬‬
‫‪0.725 * 2 = 1.45‬‬
‫‪0.45 * 2 = 0.9‬‬
‫‪0.9 * 2 = 1.8‬‬
‫‪0.8 * 2 = 1.6‬‬
‫‪0.6 * 2 = 1.2‬‬
‫‪0.2 * 2 = 0.4‬‬
‫‪0.4 * 2 = 0.8‬‬
‫‪0.8 * 2 = 1.6‬‬
‫‪23‬‬
‫–‬
‫–‬
‫–‬
‫–‬
‫–‬
‫–‬
‫–‬
‫–‬
‫مقادیر اعشاری‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫•‬
‫تبدیل عدد اعشاری از مبنای ‪ 2‬به مبنای ‪10‬‬
‫– قسمت سمت چپ اعشار (قسمت صحیح)‪ ،‬مانند قبل‪... ،23 ،22 ،21 ،20 :‬‬
‫– قسمت سمت راست اعشار (قسمت اعشاری)‪ ،‬ضرب متوالی در ‪... ،2-3 ،2-2 ،2-1‬‬
‫•‬
‫مثال‬
‫– عدد ‪ 1101.01011‬را به مبنای ‪ 10‬ببرید؟‬
‫– عدد ‪ 1101‬معادل ‪ 13‬است‪.‬‬
‫– حاصل‪13.34375 :‬‬
‫‪24‬‬
‫نمایش مقادیر اعشاری‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫•‬
‫نمایش اعداد اعشاری در کامپیوتر مشکلتر است‪.‬‬
‫– ما معموال اعداد اعشاری را به شکل ممیز ثابت نشان میدهیم ‪53.648 :‬‬
‫– اما شکل دیگری نیز وجود دارد که به آن نماد علمی یا ممیز شناور گفته میشود و به شکل زیر است ‪:‬‬
‫•‬
‫•‬
‫‪53.648 × 100‬‬
‫‪5.3648 × 101‬‬
‫‪0.53648 × 102‬‬
‫‪5364.8 × 10-2‬‬
‫همانطور که دیده میشود‪ ،‬مکان ممیمز در ایمن نممایش شمناور اسمت و میتوانمد در همر نقطمهای قمرار گیمرد و البتمه تموان نیمز بایمد‬
‫متناسب با آن تنظیم گردد‪.‬‬
‫– نماد علمی نرمال به حالتی گفته میشود که قسمت صحیح فقط دارای یک رقم غیر صفر باشد‪.‬‬
‫برای نمایش اعمداد اعشماری در کمامپیوتر اسمتانداردهای مختلفمی وجمود دارد کمه همصمی در اصمول مشمترکند و تنهما تفاوتهمایی در‬
‫جزئیات دارند‪.‬‬
‫نمایش مقادیر اعشاری‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫•‬
‫•‬
‫•‬
‫ممما در این مما از یممک روش اسممتاندارد متممداول کممه توسممط ان مممن معتبممر ‪ IEEE‬ارائممه شممده اسممت‪ ،‬اسممتفاده‬
‫میکنیم‪ .‬این استاندارد بنام‬
‫‪IEEE Standard 754 Floating Point Numbers‬‬
‫شناخته شده است‪.‬‬
‫برای اطالعات بیشتر به سایت ‪ http://standards.ieee.org‬مراجعه نمایید‪.‬‬
‫در استاندارد مورد نظر هر عدد اعشاری در یک کلمه ‪ 32‬بیتی ذخیره میگردد‪ .‬ساختار هر عدد بصمورت زیمر‬
‫است‪:‬‬
‫‪8‬‬
‫‪23‬‬
‫‪m‬‬
‫مانتیس‬
‫‪e‬‬
‫توان‬
‫‪1‬‬
‫‪s‬‬
‫عالمت‬
‫نمایش مقادیر اعشاری‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫• برای ذخیره یک عدد اعشاری باید ابتدا آن را به نماد علمی نرمال در مبنای ‪ 2‬تبدیل کنیم‪ .‬سپس آن را به شمکل‬
‫زیر ذخیره میکنیم ‪:‬‬
‫• عالمت عدد را در ‪ s‬قرار میدهیم (مثبت = ‪ 0‬و منفی = ‪)1‬‬
‫• توان را در قسمت ‪ e‬قرار میدهیم که یک عدد مثبت بدون عالمت است(بین ‪ 0‬تا ‪.)255‬‬
‫–‬
‫–‬
‫–‬
‫–‬
‫نکتمه مممم آنکمه از آن ما کمه ممکمن اسممت تموان مثبمت یما منفمی باشمد‪ ،‬ابتممدا ‪ 127‬واحمد بمه تموان اضمافه ممیکنیم و سممپس آن را‬
‫ذخیره میکنیم‪.‬‬
‫بنابراین ‪ e = 131‬باشد بدین معناست که توان برابر ‪ 4‬بوده است و ‪ e=120‬به معنای توان برابر ‪ -7‬است‪.‬‬
‫البته توانهای ‪ e=255‬و ‪ e=0‬برای منظورهای خاص ی در نظر گرفته شدهاند که بعدا توضیح داده خواهند شد‪.‬‬
‫در واقعیت محدوده توان از ‪ -126‬تا ‪ +128‬خواهد بود‪.‬‬
‫• قسمت پایه عدد را در مانتیس قرار میدهیم‪.‬‬
‫– نکته جالب آن است که چون در نمایش نرمال قسمت صحیح تنها یک رقم غیرصفر دارد و در نمایش دودویی نیز تنها رقمم غیمر‬
‫صفر‪ ،‬رقم ‪ 1‬میباشد؛ بنابراین تنها قسمت اعشاری در مانتیس ذخیره میگردد و قسمت صمحیح بطمور پمیش فمر ‪ 1‬درنظمر‬
‫گرفته میشود‪ .‬این باعث میشود که یک بیت در ذخیره سازی صرفه جویی گردد‪.‬‬
‫نمایش مقادیر اعشاری‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫•‬
‫مثال‪ :‬عدد صحیح ‪ 486‬را بصورت دودویی اعشاری ذخیره نمایید‪.‬‬
‫– ابتدا آن را به مبنای ‪ 2‬تبدیل میکنیم‪.‬‬
‫‪(486)10 = (111100110)2‬‬
‫– اکنون داریم ‪:‬‬
‫‪111100110 = 1.11100110 × 28‬‬
‫‪s : 0 e : 8+127 = 135 = 10000111m : 11100110‬‬
‫– بنابراین جواب نهایی بصورت زیر خواهد شد ‪:‬‬
‫‪11100110000000000000000‬‬
‫‪10000111‬‬
‫‪0‬‬
‫نمایش مقادیر اعشاری‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫•‬
‫مثال ‪ :2‬عدد ‪ -121.640625‬را بصورت دودویی اعشاری ذخیره نمایید‪.‬‬
‫– ابتدا عدد ‪ 121‬را به مبنای ‪ 2‬میبریم‪:‬‬
‫‪(121)10 = (1111001)2‬‬
‫– واما برای تبدیل قسمت اعشاری باید از روش ضربهای متوالی استفاده نماییم‪ .‬بدین صورت که ابتدا آن را در ‪ 2‬ضرب‬
‫کرده و قسمت صحیح حاصلضرب را ذخیره میکنیم‪ .‬همین عممل را م مددا بمرروی قسممت اعشماری حاصلضمرب ان مام‬
‫میدهیم و اینکار را تا صفر شدن قسمت اعشاری و یا پر شدن تعداد بیتهای کلمه موردنظر (‪ 23‬بیت) تکرار میکنیم‪ .‬در‬
‫پایان ارقام ذخیره شده را از اول به آخر به ترتیب پس از ممیز قرار میدهیم‪ .‬داریم ‪:‬‬
‫‪0.640625 × 2 = 1.28125‬‬
‫‪ = 1‬قسمت صحیح‬
‫‪0.28125 × 2 = 0.5625‬‬
‫‪ = 0‬قسمت صحیح‬
‫‪0.5625 × 2 = 1.125‬‬
‫‪ = 1‬قسمت صحیح‬
‫‪0.125 × 2 = 0.25‬‬
‫‪ = 0‬قسمت صحیح‬
‫‪0.25 × 2 = 0.5‬‬
‫‪ = 0‬قسمت صحیح‬
‫‪0.5 × 2 = 1.00‬‬
‫‪ = 1‬قسمت صحیح‬
‫‪(0.640625)10 = (0.101001)2‬‬
‫نمایش مقادیر اعشاری‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫•‬
‫بنابراین عدد نهایی بصورت زیر درخواهد آمد ‪:‬‬
‫‪(121.640625)10 = (1111001.101001)2 = (1.111001101001 × 26)2‬‬
‫‪m : 111001101001‬‬
‫‪e : 6 + 127 = 133 = 10000011‬‬
‫‪11100110100100000000000‬‬
‫•‬
‫‪10000011‬‬
‫‪s:1‬‬
‫‪1‬‬
‫نکته ممم ‪ :‬توجه داشته باشید که به دلیل محدود بودن اندازه مانتیس (‪ 23‬بیت)‪ ،‬در هنصام تبدیل اعداد‬
‫از مبنممای ‪ 10‬بممه مبنممای ‪ 2‬م بممور هسممعیم عمممل ضممرب را تمما زمانیکممه بیتهمما پممر شمموند ادامممه دهممیم‪ .‬ایممن مسم له‬
‫باع ممث میش ممود ک ممه مق ممدار تقری ممی اع ممداد در کلم ممه ‪ 32‬بیت ممی ذخی ممره گ ممردد‪ .‬بن ممابراین در هنص ممام ک ممار ب مما اع ممداد‬
‫اعشاری به این مس له توجه کنید‬
‫نمایش مقادیر اعشاری‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫•‬
‫یک عدد اعشاری ذخیره شده به فرم استاندارد موردنظر به شکل زیر تفسیر میگردد ‪:‬‬
‫– اگر ‪ 0<e<255‬آنصاه ‪ = (-1)s × (1.m) × 2e-127‬عدد‬
‫– اگر ‪ e=0‬و ‪ m‬غیر صفر باشد آنصاه ‪ = (-1)s × (0.m) × 2-126‬عدد‬
‫• که به آن عدد غیرنرمال )‪ (unnormalized‬گفته می‌شود‪ .‬دلیل این مئنه ه آنئنه کنه بنا کنو توری تنوان م تن‬
‫‪ 126‬بتوان کو توری مانتیس م ت (بدون اضافه شدن ‪ )1‬را برای ن ا ش اعداد کو ک داشه‪.‬‬
‫– اگر ‪ e=0‬و ‪ m=0‬آنصاه ‪ = 0‬عدد‬
‫• که البته بئته به میزان ‪ s‬مقدار آن ‪ +0‬یا ‪ -0‬خواهد بود‪.‬‬
‫– اگر ‪ e=255‬و ‪ m‬غیرصفر باشد آنصاه حاصل یک عدد نیست (‪ NaN‬یا ‪)Not a Number‬‬
‫– اگر ‪ e=255‬و ‪ m=0‬و ‪ s=0‬آنصاه عدد برابر مثبت بینهایت است‪.‬‬
‫– اگر ‪ e=255‬و ‪ m=0‬و ‪ s=1‬آنصاه عدد برابر منفی بینهایت است‪.‬‬
‫نی ‪-‬‬
‫ذخیره کاراکترها‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫•‬
‫کاراکترها‬
‫–‬
‫–‬
‫–‬
‫–‬
‫•‬
‫‪(0 – 127) Standard ASCII‬‬
‫‪(0 – 255) Extended ASCII‬‬
‫‪(0 – 255) ANSI‬‬
‫‪(0 – 65,535) Unicode‬‬
‫کاراکتر ‪A‬‬
‫– مبنای ‪01000001 :2‬‬
‫– مبنای ‪65 :10‬‬
‫– مبنای ‪41 :16‬‬
‫– مبنای ‪101 :8‬‬
‫‪32‬‬
‫کد کاراکترها‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫‪33‬‬
‫کد کاراکترها‬
‫مبانی کامپیوتر و برنامه نویس ی‬
‫‪34‬‬