Presentation is loading. Please wait.

Presentation is loading. Please wait.

نمايش اعداد در کامپيوتر چهار عمل اصلي

Similar presentations


Presentation on theme: "نمايش اعداد در کامپيوتر چهار عمل اصلي"— Presentation transcript:

1 نمايش اعداد در کامپيوتر چهار عمل اصلي
اصول كامپيوتر 1

2 نمايش اعداد اعداد ده دهي، رايجترين شکل نمايش اعداد هستند
هر عدد به صورت ضرايب توانهايي از 10 نمايش داده مي شود کامپيوترها از نمايش دو دويي استفاده مي کنند اين نمايش به آساني با سخت افزار قابل پياده سازي است هر رقم دو دويي يک رقم صفر يا يک است که يک بيت نام دارد bit = binary digit Byte = 8 bits پيچيدگي کمتري نسبت به نمايش ده دهي دارد

3 نمايش اعداد صحيح اعداد صحيح بدون علامت / مثبت يا صفر
براي نمايش داده هاي نا منفي استفاده مي شوند Characters, Ages, Date,… مثال:‌ عدد 5 در مبناي دو با 8 بيت: : با N‌بيت، مي توان اعداد بازه N -1را نشان داد 8 بيت ( 1 بايت ) بازه 0تا 255 را پوشش مي دهد اعداد علامت صحيح دار نمايش با بيت علامت Sign Bit نمايش با مكمل 2 Two’s Complement

4 نمايش اعدد منفي با بيت علامت
sign 1 bit Number, 7bits Examples: 52 = , -52 = N bits Range -2N N-1 -1 مشكل : صفر دو نمايش دارد = 0 = الگوريتم تفريق پيچيده مي شود

5 مكمل 2 عدد k بيتي N برابر است با2k – N : مثال:
comp(5)= = 251 5=  comp(5) =251 = comp(128) = = 256 – 128 = 128 براي محاسبه مكمل 2 بيتهاي صفر را به يك و بيتهاي يك را به صفر تبديل مي كنيم عدد حاصل را با (1) جمع مي كنيم

6 مكمل 2 نقش در محاسبات: اعداد منفي به صورت مكمل 2 ذخيره مي شوند. بسادگي، عمل تفريق مشابه عمل جمع انجام مي شود. بيت انتهايي سمت چپ اعداد نشان دهنده علامت عدد است اگر يك باشد ، عدد منفي است بر خلاف بيت علامت، اين بيت در ساختار خود عدد نقش دارد و تنها نشان دهنده علامت نيست = + عدد 5 مكمل 2 عدد 5

7 اعداد اعشاري: Fractional Numbers
Examples: = 4 x x x x x 10-2 = 1 x x x x x x 2-2 = / ¼ = = تبديل از مبناي 2 به مبناي 10 Examples: = 1 x x x x x 2-2 = / ¼ = Examples: ½ ¼ 1/8 x

8 تبديل مبناي 10 به مبناي 2 4 2 1 1/2 1/4 1/8 Examples: 7.7510 = (?)2
تبديل مبناي 10 به مبناي 2 Examples: = (?)2 Conversion of the integer part: repeated division by 2 7 / 2 = 3 (Q), 1 (R)  3 / 2 = 1 (Q), 1 (R)  1 / 2 = 0 (Q), 1 (R) = 1112 Conversion of the fractional part: perform a repeated multiplication by 2 and extract the integer part of the result 0.75 x 2 =1.50  extract 1 0.5 x 2 =  extract = 0.112  stop  Combine the results from integer and fractional part, = How about choose some of Examples: try 5.625B write in the same order 4 2 1 1/2 1/4 1/8 =0.5 =0.25 =0.125

9 اعداد اعشاري Exercise 1: Convert (0.625)10 to its binary form
Solution: Solution: x 2 = 1.25  extract 1 0.25 x 2 = 0.5  extract 0 0.5 x 2 = 1.0  extract 1 0.0  stop  (0.625)10 = (0.101)2 0.6 x 2 = 1.2  extract 1 0.2 x 2 = 0.4  extract 0 0.4 x 2 = 0.8  extract 0 0.8 x 2 = 1.6  extract 1 0.6 x 2 =   (0.6)10 = ( …)2

10 اعداد اعشاري Exercise 3: Convert (0.8125)10 to its binary form
Solution: x 2 =  extract 1 0.625 x 2 = 1.25  extract 1 0.25 x 2 = 0.5  extract 0 0.5 x 2 = 1.0  extract 1 0.0  stop  (0.8125)10 = (0.1101)2

11 نمايش اعداد اعشاري x = f • Base E f : mantissa(مانتيس)
E: exponent(نما) Example: = • 103 mantissa = • 103 = • 10 –1 مانتيس به صورت نرمال نشان داده مي شود. چون در فرم دودويي رقم قبل از صفر هميشه 1 است، اين رقم ذكر نمي شود

12 نرمال سازي اعداد Example: = x 103 = x B = x 23 or x 22 (hidden1) 0.011B = .11 x 2-1 or 1.1 x 2-2 (hidden1) AB.CDH= .ABCD x 162 0.00ACH= .AC x 16-2

13 نمايش اعداد اعشاري x = ± f • Base E - : 1
اگر از حافظه 16 بيتي براي نمايش نرمال شده اعداد اعشاري استفاده كنيم،از چپ به راست: اولين بيت نشان دهنده علامت عدد است ( 0: مثبت و 1: منفي) 11 بيت بعدي نشان دهنده فرم نرمال مانتيس هستند.( (f چهار بيت بعدي، نشان دهنده نماي عدد به اضافه 7 است (E). بدين شكل، نما هميشه مثبت يا صفر است20=7 (0111). 21=8 (1000), 2-1=6 (0110) x = ± f • Base E f = 1.?1?2?3?4…?11 ?12…?15 E : converted to binary, b1b2b3b4 MSB LSB ?1 ?2 ?3 ?4 ?11 ?10 ?9 ?8 ?7 ?5 ?6 b2 b3 b4 b1 + : 0 - : 1 Excess-7

14 نمايش عدد 1110.111010111111 در كامپيوتر: مثال گام اول نرمال سازي:
نمايش عدد در كامپيوتر: گام اول نرمال سازي: = * 2 +3 گام دوم :محاسبه نما: 10=7+3 نمايش 16 بيتي: exponent 4 bits sign 1 bit mantissa 11 bits

15 مثال – تفسير نمايش 0 11000000000 0100 B = 1.11B *2(4-7)=-3 = 0.00111B
= 7/32 = D

16 IEEE 754 Standard اين استاندارد در اغلب كامپيوترها مورد استفاده است
عدد اعشاري از نوع float داراي 32 بيت است بيت علامت نشان دهنده علامت عدد است ( 1: منفي و صفر: مثبت) 23 بيت انتهايي نشان دهنده مانتيس است كه به صورت نرمال در آمده است. يعني رقم يك قبل از مميز آن نشان داده نمي شود 8 بيت مياني، نماي عدد را نشان مي دهد كه عدد 127 به آن اضافه شده است. اعداد اعشاري double به صورت مشابهي نگهداري مي شوند 1 sign bit 8 exponent 23 fraction 1 sign bit 11 exponent 52 fraction

17 IEEE 754 Standard حالات خاص: اگر نما و مانتيس صفر باشند، عدد صفر است
اگر نما صفر باشد، 1 مخفي استفاده نمي شود اگر نما حداكثر مقدار خود را داشته باشد و مانتيس صفر باشد، عدد بي نهايت است اگر نما حداكثر مقدار خود را داشته باشد و مانتيس غير صفر باشد، عدد “تعريف نشده” است NaN = Not a Number 1 sign bit 8 exponent 23 fraction 1 sign bit 11 exponent 52 fraction

18 IEEE 754 Examples: Normalized Numbers
IEEE 754 Standard IEEE 754 Examples: Normalized Numbers = 1 x 24 = 16 = 1 x 2-78 = e-24 = 1.25 x 22 = 5

19 تمرين: نوع داده هاي پايه و دامنه آنها در زبان C++/JAVA چگونه است ؟


Download ppt "نمايش اعداد در کامپيوتر چهار عمل اصلي"

Similar presentations


Ads by Google