You are on page 1of 26

‫اصول سيستمهای کامپيوتری‬

‫جلسه هفتم‪ :‬نمايش داده ها‬

‫مدرس‪ :‬دکتر محمد حسن شيرعلی شهرضا‬


‫معرفی درس‬
‫اصول سيستمهای کامپيوتری‬
‫جلسه هفتم‪ :‬نمايش داده ها‬

‫فهرست مطالب‪:‬‬ ‫•‬


‫نمايش داده ها در کامپيوتر‬ ‫–‬
‫نمايش اعداد عالمت دار‬ ‫–‬
‫نمايش اعداد اعشاری‬ ‫–‬
‫کد گری‬ ‫–‬
‫کد تصحيح خطا‬ ‫–‬

‫اين جلسه مطابق با فصل سوم از کتاب مانو است‪.‬‬

‫‪2‬‬
‫نمايش داده ها در کامپيوتر‬
‫کوچکترين واحد اطالعات در کامپيوتر بيت )‪ (bit‬میباشد‪.‬‬
‫يک بيت میتواند صفر يا يک باشد‬
‫}‪B = {0, 1‬‬
‫با يک فليپ فالپ میتوان يک بيت اطالعات را نگهداری کرد‬
‫به هشت بيت اطالعات يک بايت )‪ (byte‬میگويند‬
‫‪01000001‬‬
‫معموال ظرفيت حافظه يک کامپيوتر يا يک ديسک بر حسب بايت بيان میشود‬
‫برای راحتی از نمادهای زير استفاده میشود‪:‬‬
‫کيلو = ‪ = 1024‬حدود هزار‬
‫مگا = ‪ = 1024 x 1024‬حدود يک ميليون‬
‫گيگا = ‪ = 1024 x 1024 x 1024‬حدود يک ميليارد‬
‫ترا = ‪ = 1024 x 1024 x 1024 x 1024‬حدود يک هزار ميليارد‬
‫‪3‬‬
‫سيستم اعداد‬
‫• نمايش اعداد در مبنای ‪10‬‬
‫ارزش هر عدد در مبنای ‪ 10‬با ضرب هر رقم در ارزش مکانی آن رقم بدست میآيد‬
‫مثال‪:‬‬
‫‪724.5 = 7 x 102 + 2 x 101 + 4 x 100 + 5 x 10-1‬‬
‫• در کامپيوتر معموال از مبنای ‪( 2‬دودوئی يا باينری) استفاده میشود‬
‫ارزش هر عدد در مبنای ‪ 2‬نيز با ضرب هر رقم در ارزش مکانی آن رقم بدست میآيد‬
‫مثال‪:‬‬
‫‪101101 = 1 x 25 + 0 x 24 + 1 x 23 + 1 x 22 + 0 x 21 + 1 x 20‬‬
‫بنابراين‪(101101)2 = (45)10 :‬‬

‫‪4‬‬
‫تبديل از مبنای ‪ 10‬به مبنای ‪2‬‬
‫• برای تبديل يک عدد از مبنای ‪ 10‬به مبنای ‪ 2‬از تقسيم متوالی استفاده میکنيم‬

‫مثال‪:‬‬
‫‪2 25‬‬
‫‪2 12‬‬ ‫‪1‬‬
‫‪2 6‬‬ ‫‪0‬‬
‫‪2 3‬‬ ‫‪0‬‬
‫‪1‬‬ ‫‪1‬‬

‫بنابراين‪(11001)2 = (25)10 :‬‬

‫‪5‬‬
‫مبنای ‪ 8‬و ‪16‬‬

‫در اکثر موارد به جای اعداد مبنای ‪ 2‬از مبنای ‪(16‬هگزا دسيمال)‬
‫و به ندرت از مبنای ‪ 8‬استفاده میشود‬

‫تبديل اعداد از مبنای ‪ 2‬به مبنای ‪ 8‬يا ‪( 16‬و برعکس آن) به سادگی انجام میشود‬
‫ولی خواندن و نوشتن اعداد مبنای ‪ 8‬يا ‪ 16‬ساده تر از اعداد مبنای ‪ 2‬است‬

‫‪6‬‬
‫مبنای ‪ 8‬و مبنای ‪16‬‬
‫•مبنای ‪ 16‬يا هگزا دسيمال‬
‫در اکثر موارد به جای اعداد مبنای ‪ 2‬از مبنای ‪ 16‬و به ندرت از مبنای ‪ 8‬استفاده میشود‬

‫مبنای ‪16‬‬ ‫مبنای ‪2‬‬ ‫مبنای ‪ 8‬مبنای ‪16‬‬ ‫مبنای ‪2‬‬


‫‪8‬‬ ‫‪1000‬‬ ‫‪0‬‬ ‫‪0‬‬ ‫‪0000‬‬
‫‪9‬‬ ‫‪1001‬‬ ‫‪1‬‬ ‫‪1‬‬ ‫‪0001‬‬
‫‪a‬‬ ‫‪1010‬‬ ‫‪2‬‬ ‫‪2‬‬ ‫‪0010‬‬
‫‪b‬‬ ‫‪1011‬‬ ‫‪3‬‬ ‫‪3‬‬ ‫‪0011‬‬
‫‪c‬‬ ‫‪1100‬‬ ‫‪4‬‬ ‫‪4‬‬ ‫‪0100‬‬
‫‪d‬‬ ‫‪1101‬‬ ‫‪5‬‬ ‫‪5‬‬ ‫‪0101‬‬
‫‪e‬‬ ‫‪1110‬‬ ‫‪6‬‬ ‫‪6‬‬ ‫‪0110‬‬
‫‪f‬‬ ‫‪1111‬‬ ‫‪7‬‬ ‫‪7‬‬ ‫‪0111‬‬

‫‪7‬‬
‫نمايش اعداد اعشاری‬
‫برای نمايش اعداد اعشاری دو روش مميز ثابت و مميز شناور وجود دارد‬
‫در روش مميز ثابت قسمت صحيح و اعشاری بصورت جداگانه نمايش داده میشوند‬
‫مثال ‪ :‬عدد ‪ 41 / 6875‬را به مبنای ‪ 2‬تبديل کنيد‪.‬‬
‫ابتدا قسمت صحيح را با تقسيمات متوالی به مبنای ‪ 2‬تبديل می کنيم‪:‬‬
‫‪41‬‬
‫‪20 : 1‬‬
‫‪10 : 0‬‬
‫‪5:0‬‬
‫‪2:1‬‬
‫‪1:0‬‬
‫‪0:1‬‬
‫‪(41)10 = (101001)2‬‬
‫‪8‬‬
‫نمايش اعداد اعشاری (ادامه)‬
‫سپس قسمت اعشاری را با ضرب متوالی به مبنای ‪2‬تبديل می کنيم‬

‫‪0.6875 * 2 = 1.3750‬‬
‫‪0.375 * 2 = 0.750‬‬
‫‪0.75 * 2 = 1.5‬‬
‫‪0.5 * 2 = 1.0‬‬
‫‪(0.6875)10 = (0.1011)2‬‬

‫پس در نهايت عدد ‪ 41.6875‬در مبنای ‪ 10‬برابر با ‪ 101001.1011‬در مبنای‬


‫‪ 2‬است‬

‫‪9‬‬
‫نمايش اعداد اعشاری (مبنای ‪)8‬‬

‫‪(736.4)8 = 7 x 82 + 3 x 81 + 6 x 80 + 4 x 8-1 = (478.5)10‬‬

‫‪(736.4)8 = (111011110.100)2‬‬

‫‪10‬‬
‫نمايش ‪ BCD‬اعداد‬
‫• در روش ‪ BCD‬هر رقم مبنای ‪ 10‬با ‪ 4‬بيت نشان داده میشود‬

‫مثال‪:‬‬
‫‪(125)10 = (0001 0010 0101)BCD‬‬

‫‪11‬‬
‫کد اسکی )‪(ASCII Code‬‬
‫برای نمايش کاراکترها و حروف از کد استاندارد اسکی استفاده میشود‬
‫مثال‪:‬‬
‫کد اسکی ‪ A‬برابر ‪ 0100 0001‬است‬
‫کد اسکی ‪ a‬برابر ‪ 0110 0001‬است‬
‫کد اسکی استاندارد ‪ 7‬بيتی است‬
‫ولی امروزه معموال برای کد اسکی از ‪ 8‬بيت استفاده میشود‬

‫‪12‬‬
‫نمايش اعداد عالمت دار‬
‫• برای نمايش اعداد عالمت دار سه روش وجود دارد‪:‬‬
‫‪ -1‬روش اندازه – عالمت‬
‫‪ -2‬روش مکمل ‪r-1‬‬
‫‪ -3‬روش مکمل ‪r‬‬
‫‪ r‬مبنای عدد است‬

‫‪13‬‬
‫روش اندازه عالمت‬
‫• در روش اندازه عالمت‪ ،‬هر عدد بصورت عالمت و قدرمطلق‬
‫نشان داده میشود‬
‫مثال ‪( :‬نمايش عدد ‪ 14‬و ‪ -14‬با ‪ 8‬بيت در مبنای ‪)2‬‬
‫‪(+14)10 = (0 000 1110)2‬‬
‫‪(-14)10 = (1 000 1110)2‬‬

‫‪14‬‬
‫روش مکمل ‪r-1‬‬
‫• در روش مکمل ‪ ،r-1‬برای مکمل کردن يک عدد هر رقم آن عدد‬
‫از ‪ r-1‬کسر میشود‬
‫مثال ‪( :‬نمايش عدد ‪ 14‬و ‪ -14‬با ‪ 8‬بيت در مبنای ‪)2‬‬
‫‪(+14)10 = (0 000 1110)2‬‬
‫‪(-14)10 =(85)9’s complement‬‬
‫‪= (1 111 0001)1’s complement‬‬

‫‪15‬‬
‫روش مکمل ‪r‬‬
‫• در روش مکمل ‪ ،r‬برای مکمل کردن يک عدد هر رقم آن عدد از‬
‫‪ r-1‬کسر شده و در نهايت عدد با يک جمع میشود‬
‫مثال ‪( :‬نمايش عدد ‪ 14‬و ‪ -14‬با ‪ 8‬بيت در مبنای ‪)2‬‬
‫‪(+14)10 = (0 000 1110)2‬‬
‫‪(-14)10 =(86)10’s complement‬‬
‫‪= (1 111 0010)2’s complement‬‬

‫‪16‬‬
‫تفريق‬
‫• برای تفريق می توان عدد اول را با مکمل عدد دوم جمع کرد‬
‫)‪A – B = A + (-B‬‬
‫مثال ‪ :‬تفريق دو عدد مبنای ‪ 10‬با استفاده از مکمل ‪10‬‬
‫)‪72532 – 13250= 72532 + (-13250‬‬
‫مکمل ‪(-13250) = 86750 10‬‬
‫)‪72532 + (-13250‬‬
‫)‪= 72532 + (86750‬‬
‫‪= 1 59282‬‬
‫از رقم آخر صرف نظر میشود‪ ،‬بنابر اين‬
‫‪72532 – 13250= 59282‬‬

‫‪17‬‬
‫جمع دو عدد عالمت دار (مکمل ‪)r‬‬
‫• جمع دو عدد عالمت دار (مکمل ‪ )r‬بصورت جمع معمولی دو عدد انجام میشود‬
‫مثال ‪ :‬جمع چند عدد مبنای ‪( 2‬مکمل ‪)2‬‬
‫‪(+ 6) 0000 0110‬‬ ‫‪(- 6) 1111 1010‬‬
‫‪+(+ 13) 0000 1101‬‬ ‫‪+(+ 13) 0000 1101‬‬
‫‪------------------‬‬ ‫‪-------------------‬‬
‫‪(+ 19) 0001 0011‬‬ ‫‪(+ 7) 0000 0111‬‬

‫‪(+ 6) 0000 0110‬‬ ‫‪(- 6) 1111 1010‬‬


‫‪+(- 13) 1111 0011‬‬ ‫‪+(- 13) 1111 0011‬‬
‫‪-------------------‬‬ ‫‪-------------------‬‬
‫‪(- 7) 1111 1001‬‬ ‫‪(- 19) 1110 1101‬‬

‫‪18‬‬
‫سرريز )‪(overflow‬‬
‫• اگر مجموع دو عدد ‪ n‬رقمی‪ n+1 ،‬رقم داشته باشد‪ ،‬سرريز رخ میدهد‬
‫مثال‪ :‬جمع دو عدد ‪ 8‬بيتی عالمت دار‬
‫بيت نقلی ‪01‬‬ ‫بيت نقلی ‪10‬‬
‫‪(+ 70) 0100 0110‬‬ ‫‪(- 70) 1011 1010‬‬
‫‪(+ 80) 0101 0000‬‬ ‫‪(- 80) 1011 0000‬‬
‫‪--------------------------------‬‬ ‫‪-----------------------------------‬‬
‫‪(- 106) 1001 0110‬‬ ‫‪(+106) 0110 1010‬‬

‫‪Overflow = Cn XOR Cn-1‬‬

‫‪19‬‬
‫نمايش مميز شناور )‪(Floating Point‬‬
‫• در روش مميز شناور اعداد بصورت زير نمايش داده میشوند‬
‫‪mre‬‬
‫که به ‪ r‬پايه‪ ،‬به ‪ m‬مانتيس و به ‪ e‬نما گفته میشود‬
‫در کامپيوتر پايه توان را ‪ 2‬در نظر میگيرند‬
‫مانتيس را عددی بين صفر تا يک و توان را يک عدد مثبت يا منفی در نظر‬
‫میگيرند‬
‫مثال‪:‬‬
‫‪m  r e = 0.10011102  2 +4 = 9.7510‬‬

‫‪20‬‬
‫کد گری )‪(Gray Code‬‬
‫• در کد گری هر دو عدد متوالی فقط در يک بيت اختالف دارند‬

‫کد کری ‪ 4‬بيتی‬

‫معادل دهدهي‬ ‫کد گري‬ ‫معادل دهدهي‬ ‫کد کري‬


‫‪8‬‬ ‫‪1100‬‬ ‫‪0‬‬ ‫‪0000‬‬
‫‪9‬‬ ‫‪1101‬‬ ‫‪1‬‬ ‫‪0001‬‬
‫‪10‬‬ ‫‪1111‬‬ ‫‪2‬‬ ‫‪0011‬‬
‫‪11‬‬ ‫‪1110‬‬ ‫‪3‬‬ ‫‪0010‬‬
‫‪12‬‬ ‫‪1010‬‬ ‫‪4‬‬ ‫‪0110‬‬
‫‪13‬‬ ‫‪1011‬‬ ‫‪5‬‬ ‫‪0111‬‬
‫‪14‬‬ ‫‪1001‬‬ ‫‪6‬‬ ‫‪0101‬‬
‫‪15‬‬ ‫‪1000‬‬ ‫‪7‬‬ ‫‪0100‬‬

‫‪21‬‬
‫کد کشف خطا )‪(Error Detection Code‬‬
‫• در هنگام انتقال يا ذخيره سازی اطالعات ممکن است اطالعات خراب شوند‬
‫برای کشف خطا‪ ،‬يک سری اطالعات اضافی به اطالعات اضافه میشود‬
‫به کمک اين اطالعات اضافی میتوان خطا را کشف يا حتی تصحيح کرد‬
‫• بيت توازن )‪(Parity Bit‬‬
‫سادهترين روش استفاده از بيت توازن میباشد‬
‫در بيت توازن بيتهای ‪ 1‬شمارش شده و با اضافه کردن يک بيت توازن تعداد‬
‫‪ 1‬را فرد (يا زوج) قرار میدهيم‪.‬‬
‫مثال‪ :‬اگر داده ‪ 0111‬بايد ارسال شود و توازن زوج در نظر باشد‪ ،‬يک بيت‬
‫توازن ‪ 1‬همراه داده ارسال میشود‬

‫‪22‬‬
‫بيت توازن‬
‫‪A‬‬ ‫‪B‬‬ ‫‪C‬‬ ‫‪D E‬‬ ‫‪O‬‬
‫جدول بيت توازن برای ‪ 4‬بيت داده‬ ‫•‬
‫‪0‬‬ ‫‪0‬‬ ‫‪0‬‬ ‫‪0 0‬‬ ‫‪1‬‬ ‫‪ ABCD‬داده های مورد نظر‬ ‫•‬
‫‪0‬‬ ‫‪0‬‬ ‫‪0‬‬ ‫‪1 1‬‬ ‫‪0‬‬
‫‪0‬‬ ‫‪0‬‬ ‫‪1‬‬ ‫‪0 1‬‬ ‫‪0‬‬ ‫‪ E‬بيت توازن زوج‬ ‫•‬
‫‪0‬‬ ‫‪0‬‬ ‫‪1‬‬ ‫‪1 0‬‬ ‫‪1‬‬
‫‪0‬‬ ‫‪1‬‬ ‫‪0‬‬ ‫‪0 1‬‬ ‫‪0‬‬
‫‪ O‬بيت توازن فرد‬ ‫•‬
‫‪0‬‬ ‫‪1‬‬ ‫‪0‬‬ ‫‪1 0‬‬ ‫‪1‬‬
‫‪0‬‬ ‫‪1‬‬ ‫‪1‬‬ ‫‪0 0‬‬ ‫‪1‬‬
‫‪0‬‬ ‫‪1‬‬ ‫‪1‬‬ ‫‪1 1‬‬ ‫‪0‬‬
‫‪1‬‬ ‫‪0‬‬ ‫‪0‬‬ ‫‪0 1‬‬ ‫‪0‬‬
‫‪1‬‬ ‫‪0‬‬ ‫‪0‬‬ ‫‪1 0‬‬ ‫‪1‬‬
‫‪1‬‬ ‫‪0‬‬ ‫‪1‬‬ ‫‪0 0‬‬ ‫‪1‬‬
‫‪1‬‬ ‫‪0‬‬ ‫‪1‬‬ ‫‪1 1‬‬ ‫‪0‬‬
‫‪1‬‬ ‫‪1‬‬ ‫‪0‬‬ ‫‪0 0‬‬ ‫‪1‬‬
‫‪1‬‬ ‫‪1‬‬ ‫‪0‬‬ ‫‪1 1‬‬ ‫‪0‬‬
‫‪1‬‬ ‫‪1‬‬ ‫‪1‬‬ ‫‪0 1‬‬ ‫‪0‬‬
‫‪1‬‬ ‫‪1‬‬ ‫‪1‬‬ ‫‪1 0‬‬ ‫‪1‬‬
‫‪23‬‬
‫بيت توازن‬
‫• جدول کارنو برای بيت توازن زوج‬
‫‪E=ABCD‬‬
‫‪C‬‬

‫‪0‬‬ ‫‪1‬‬ ‫‪3‬‬ ‫‪2‬‬


‫‪4‬‬ ‫‪5‬‬ ‫‪7‬‬ ‫‪6‬‬ ‫‪B‬‬
‫‪A‬‬
‫‪12‬‬ ‫‪13‬‬ ‫‪15‬‬ ‫‪14‬‬
‫‪8‬‬ ‫‪9‬‬ ‫‪11‬‬ ‫‪10‬‬
‫‪D‬‬

‫‪24‬‬
‫خودآزمايی‬
‫‪ -1‬کنکور کارشناسی ارشد – ‪1387‬‬

‫‪25‬‬
‫منابع‬
‫در تهيه اين پاورپوينت از منابع زير استفاده شده است‪:‬‬
‫‪ -1‬امير صادقی ‪ -‬معماری سيستمهای کامپيوتری – نوشته موريس مانو‬
‫– مرکز نشر دانشگاهی – چاپ اول ‪ - 1374‬چاپ پنجم – ‪1384‬‬

‫‪/‬معماری‪-‬سيستمهای‪-‬کامپيوتری‪https://iup.ac.ir/product/‬‬

‫‪ -2‬مجموعه سواالت کنکور کارشناسی ارشد‬


‫‪http://sharif.edu/~ghodsi/grad-exams/index.html‬‬

‫‪26‬‬

You might also like