^_^LittlE proGrmMeR^_^

binary coded decimal <<= ياناس ياعالم احد يجي يفهمني اياه لا تطلع عيوني :(

12 ردود في هذا الموضوع

مررررررررحبااا ألف.. :D

انا طالبة حاسب عندي استفسااار بخصووص الBCD اللي هو binary coded decimal .. ابي اعرف وش الفرق بينه وبين الباينري وشلوون نحسبه ..

الزبده اني ابي اعرف كل شي عنه ..

وعندي سؤال عليه ومنيب عارفه وشلون احله ..

هذا هو السؤال ..

Determine the value in Decimal for the numbers 01110110 and 10010010 Assuming the representation used is each of the following:

-Tow`s complement

-BCD

بالنسبه للجزء الاول من السؤال انا حليته بس ودي احط الحل عشان اتأكد اذا كان صح او غلط ..

بس الجزء الثاني ابد ما عرفت احله :( لاني مافهمت شي من BCD لما شرحته الدكتوره واحسه مسبب لي كونفيووزينج :^)

وهذا حلي للجزء الاول ..

بالنسبه للعدد الاول اللي هو : 01110110

one`s complement===>> يساوي 10001010

Tow`s complement===>> يساوي 10001011

والعدد الثاني

10010010

one`s complement===>> يساوي 01101110

Tow`s complement===>> يساوي 01101111

هذا حلي للجزء الاول وياليت تساعدوني بالجزء الثاني او على الاقل بس تفهموني على مثال وانا راح احل ذا ..وطبعا راح احط لكم الحل عشان تشوفونه

وابي اعرف الفرق بينه وبين الباينري وشلون اقدر اميز ان هذاا بي سي دي او ان هذا العدد باينري ..

اللي اعرفه ان البي سي دي كل عدد يحتوي على 4digits وكل ديجت مهمه يعني لوكان عندي العدد 0001 على الشمال ما اقدر احذف الاصفار

مثل ما اسوي بالباينري ..

تكفون ساعدوني عندي امتحان الاحد واحس انه لاحس مخي حبيتين ..

واللي بيجي يشرح لي بعد الASCII CODE اكون شاكره له ..

ابي اعرف وش الاسئله اللي ممكن تجي على الاسكي ..

ممممممممم في شي بعد عارفه اني مصختها :D بس والله تسون خير فيني ..

عندنا سؤالين في الكتاب انا حليتهم وابي اتأكد من حلهم بس مجرد تقولون صح او غلط واذا كان غلط ابي تفهموني ليه ..

السؤال الاول:

Suppose that a byte contains the ASCII code of an uppercase letter . What hex number should be added to it to convert it to

lower case?

انا اتوقع ان الحل الصحيح كذا ..

لما ناظرت بجدول الاسكي لاحظت أن الفرق بين الاحرف في حالة الكابيتل والسمول هو عباره عن العدد 32 واللي نعبر عنه بالباينري كذا 100000

يعني لما يكون عندنا حرف كابيتل وابي احول له لسمول اضيف على الاسكي كود حقه 100000..

مثال:

عندنا الحرف A الاسكي كود حقه اذا ماكنت غلطانه 1000011

عشان نحصل على حرف a بالسمول راح اجمع على 1000011 العدد 32 اللي هو 100000

ويكون عندي الاسكي كود حق a هو 1000011

اتوقع ان هذا هو الحل ..

وبالنسبه للسؤال الثاني هو نفسه السؤال الاول بس اللهم انه يكون عن الاعداد وهذا هو السؤال مع حلي ..

Suppose that a byte contains the ASCII code of a decimal digit;that is "0"...."9" . What hex number should be subtracted

from the byte to convert it to the numerical from the charcters?

الحل اتوقع انه نفس اللي قبل بس بدل ما نجمع العدد 32 المره ذي راح نطرح 64 ..

للأسف جدول الاسكي كود مب معي والا كان كتبت مثال ...

انا اتوقع ان الهدف من ذولي الاسئله هو انه يعلمنا كيف نربط العلاقه بين الاسكي كود لكل كاركتر ..ونعرف العلاقه بينهم ..مدري منيب متأكده من

اللي جالسه اكتبه لاني مش عارفه هل حلي صح او غلط ..

اسغه اني طولت عليكم بس ياليتكم تسااااعدوني ترا امتحاني قرب وانا احس انها لغة مرررررررره ممتعه بس يبي لها فهم صح وهذا اللي للأسف

حنا فاقدينه في الدكتوره حقتناااا ...

تحياتي ..

^_^LittlE proGrmMeR^_^

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

السلام عليكم

بالنسبة للBCD فهو بسيط جداً ولكن قبل ان اشرح يجب ان تعرف ان كل شئ فى الحاسوب هو على شكل باينري حتى الصور والافلام والايقونات كل شئ يحفظ على شكل باينري...

إذا ما الذي يجعل العدد الحاسوب يترجم بعض الارقام الباينري على انها رقم والبعض الاخر على انها حروف او الوان او ايقونات؟؟

الجواب الحاسوب لا يفعل ذلك وإنما البرنامج هو الذى يختار ان يترجمها بهذه الطريقة ...

مثال :

العدد 01000110 يعتبر رقم باينري ولكن إذا طلبنا من البرنامج ان يكتبه على الشاشة على شكل حرف فسوف يكتب الحرف K وإذا طلبنا منه ان يكتبه على شكل رقم عشري فسوف يكتبه الرقم 75 وهكذا ..

بالنسبة لنظام الBCD فهو كما ذكرت يقوم بتقسيم الرقم إلى مجموعات من 4 بتات هذه البتات يجب ان تحتوى على احد الاعداد من 0 إلى 9, إذا كان هناك رقم معين اكبر من 9 فهذه البتات لا يمكن ان نعتبرها ضمن نظام الBCD

مثال 1111 هل هذا الرقم تنطبق على شروط نظام الBCD؟ بالتاكيد لا , لان الرقم اكبر من 9 وفى هذه الحالة هو العدد 16..

1010 وهذا ايضاً لا تنطبق عليه الشروط, فى حين هذه الرقم 0110 فتنطبق عليه الشروط...

والان مثال اخير انظر إلى هذا الرقم

0110001100010000 هل لو قسمنا هذه الرقم إلى مجموعات تتكون من 4 بتات على التوالي هل تنطبق عليه الشروط؟ هذا هو الاختبار الاول

نعم تنطبق عليه الشروط لان كل مجموعة من 4 ارقام لا تتجاوز قيمتها العدد 9, هل يجب ان نتعامل معها على اساس انها اعداد من نوع BCD ؟؟؟ هذا يتوقف على البرنامج وكيف يحتفظ بالمعلمات, إذا كان الغرض هو التعامل معها على هذا الاساس فهى اعداد من نوع BCD لان الشروط تنطبق عليها, وإذا كان هدف البرنامج هو التعامل معها على اساس انها باينرى فيجب التعامل معها على هذا الاساس رغم انها تنطبق عليها شروط نظام الBCD::

ارجو ان تكون هذه النقطة واضحة...

السؤال اثاني ...

بالنسبة للone`s complement و ال Tow`s complement فهى عملية سهلة جداً ..

الخطوة الاولي هى تحويل جميع الاعداد إلى العكس, بمعنى ان العدد 0 يصبح 1 والعدد 1 يصبح 0 وبذلك نكون قد حصلنا على للone`s complement

للحصول على Tow`s complement كل ما يجب عمله هو إضافة العدد 1 للone`s complement...

مثال

العدد 11001010 يصبح بالللone`s complement

00110101

ولجعلة Tow`s complement نضيف العدد 1 فيصبح

00110110

لذلك حل المسئلة خطاء للاسف ويجب مراجعتها..

ملاحظة بالنسبة للمثال السابق وللواجب الذى قمت بطرحة, لفهم هذه المسئلة عليك بالقيام بجمع العدد 1 + 1 بالباينرى حتى تفهمي سبب تحول العدد الاول إلى صفر..

بالنسبة لتحويل بين الcapital والsmall يجب اضافة 32 للحرف الcapital حتى يصبح small والعكس صحيح, يعنى يجب طرح 32 من الsmall حتي يصبح capital..

الحرف A هو الرقم 65 يعنى بالباينري يصبح 1000001 ولتحويله لSmall يصبح هكذا 1100001 وهو العدد 97 بالباينري..

بالنسبة للسؤال الاخير لتحويل عدد ASCII إلى عدد يجب طرح 48 من العدد الASCII ولعمل العكس يجب جمع العدد 48 وليس كما ذكرت.

راجع الASCII TABLE

بالنسبة لشرح نظام الASCII فهو ياتي بالممارسة لان الشرح العادي لن يفيدك شئ, من واقع تجربتي فهم مثل هذه الامور ياتي بالممارسة وليس بالحفظ ...

والسلام عليكم

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

هلا والله اخووي بالاول يعطيك الف عافيه على ردك علي .. :)

نجي للرد .. :D

اللي فهمته منك عن البي سي دي .

هو انه يتكون من 4 بتات ..

وانا الرينج حقه من صفر الى 9

يعني ممكن يحتوي على ذي الارقام بس الي هي

0001

0010

0011

0100

0101

0110

0111

1000

1001

هذي الارقام اللي ممكن نكون من خلالها بي سي دي ..

اما ذولي الارقام 1010 و 1011 و 1111 مانقدر لانها تكون خارجه عن الرينج ..

طيب اخوي ذلحين السؤال اللي ابي اسأله ..

اذا كان عندنا رقم ديسمل ونبي نحوله لباينري هل صحيح اننا مانقدر نستخدم الربرسنتيشن حق كل رقم زي ماكنا نسوي في الهكسااا والاوكتل ؟

مثل لو كان عندنا العدد 265 في النظام الثماني وبنحوله الى باينري..راح ناخذ الربرسنتيشن لكل ديجيت وبيكون الجواب

010110101

بحيث اننا لو اخذنا قرووب من 3 ديجت نقدر نتوصل للعدد 265

بينماا لو جيناا للمثال اللي عندي بالملزمه لحس مخي !!

حط لي كذاا :

(234)10=(0010 0011 0100)BCD

وبعدها قالي ان البي سي دي لا يساوي الباينري وحط لي ذا المثال:

(234)10=(11101010)2

ممكن أحد يفسر لي وشلوون حصل على النتيجه بالبااينري !!!؟؟

**

طيب اخوي احمد بالنسبه للسؤال اللي انا حطيته واللي مطلوب حساب البي سي دي هل صحيح يكون الجواب كذا :

وهذا السؤال مره ثانيه

Determine the value in Decimal for the numbers 01110110 and 10010010 Assuming the representation used is each of the following

-BCD

ناخذ العدد الاول 01110110نقسمه الى 4 بتات ..

راح يعطينااا 0111=7 بالديسمل

0110=6 بالديسمل

يعني

(76)10=(01110110)BCD

اما العدد الثاني 10010010

1001= 9 بالديسمل

0010= 2بالديسمل

يعني

(92)10=(10010010)BCD

صح كذا حل السؤال؟؟

==========

نجي للــ one`s complement و Tow`s complement ..

صح عليك اخوي انا لخبطت بين الونس وبين لما نقلب العدد لسالب ..

فيكون عندنا الحل الصحيح كذاا

بالنسبه للعدد الاول اللي هو : 01110110

one`s complement===>> يساوي 10001001

Tow`s complement===>> نضيف عليه واحد راح يعطيناا 10001010

والعدد الثاني

10010010

one`s complement===>> يساوي 01101101

Tow`s complement===>> نضيف عليه واحد راح يعطيناا 01101110

اتوقع ان الجواب ذلحين صار صح :)

لذلك حل المسئلة خطاء للاسف ويجب مراجعتها..

ملاحظة بالنسبة للمثال السابق وللواجب الذى قمت بطرحة, لفهم هذه المسئلة عليك بالقيام بجمع العدد 1 + 1 بالباينرى حتى تفهمي سبب تحول العدد الاول إلى صفر..

هذا اعرفه ..

لان 1+1 = 10 راح نحط الصفر تحت ونحمل معانا الواحد كــcarry للعدد اللي بعده :)

بالنسبه لحلك للكابيتل والسمول فهو مثل الحل اللي انا قصدته ..بس انا كان عندي خطأ في كتابة الاسكي كود لل A بس الطريقه هي نفسها ..

اما السؤال الثاني حق الاعداد مافهمت ليش انت طرحت 48 !!! :wacko:

من وين جت هذي ال 48 ؟؟؟

اذا ماعليك امر ممكن توضح لي ذي النقطه.. :)

بعد ذا كله جا في بالي سؤال هو : وش فايده نظام BCD??? :( :( ?????!!

والف شكر لك ياخوي احمد مره ثانيه تعبتك معاااي في ميزان حسناتك ان شااء الله :) ..

اعذرني على الاطاله :unsure: ..

يعطيك الف عافيه وعساااك على القوه .. :)

تحياتي ..

^_^LittlE proGrmMeR^_^

تم تعديل بواسطه ^_^tlE proGrmMeR^_^
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

السلام عليكم

نعم الاجابات الان صحيحة...

بالنسبة للنظام الثماني فكل مجموعة تتكون من ثلاث خانات يعنى اكبر رقم فى النظام الثماني هو 7 ...

بالنسبة للبانيري ناخذ مثال بسيط

العدد 32 إذا اردنا ان نكتبه بنظام الBCD سيصبح هكذا

00110010

اما بالنظام البانيري فسيصبح هكذا

00100000

لتحويل العدد من النظام العشري للباينري نستخدم الطريقة التالية

234\2=117 والباقي 0

117\2=58 والباقي 1

58\2=29 والباقي 0

29\2=14 والباقي 1

14\2=7 والباقي 0

7\2=3 والباقي 1

3\2=1 والباقي 1

1\2=0 والباقي 1

ونكتب الان الرقيم بالعكس فيصبح 11101010

وهى الاجابة المتوقعة...

خلاصة الكلام إذا اردنا تحويل الرقم العشري إلى نظام BCD نقيم العدد البانيرى إلى مجموعات من 4 خانات ونضع فى كل مجموعة الرقم الذى يوافقها بنظام الباينري..

وإذا اردنا ان نحولها إلى نظام الثنائي نقوم بعملية تقسيم الرقم على 2 ونحسب باقي القسمة حتى نصل للنتيجة 0 كما هو موضح فى المثال..

واخيراً للتحويل للنظام الثماني فى الموضوع يختلف قليلاً ولكن الالية لا تختلف

مثال لو اردنا ان نحول الرقم 99 إلى نظام الثماني نقوم بالتالي

99\8=12 والباقي 3

12\8=1 والباقي 4

1\8=0 والباقي 1

والان نضع الارقام بالعكس ولكن على اساس مجموعات من 3 بتات

001100011

لو قمت بتقسيم الاعداد الان لمجموعات من ثلاث بتات ستلاحظين ان العدد بنظام الثماني يساوي 143

143 بنظام الثماني = 99 بالنظام العشري..

والسلام عليكم

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

اخوي احمد<<= والله اخر شي ذا الاحمد بيتعلق في رقبتي :D

هذاا السؤال:

Suppose that a byte contains the ASCII code of a decimal digit;that is "0"...."9" . What hex number should be subtracted

from the byte to convert it to the numerical from the charcters

انت جاوبت عليه كذاا :

بالنسبة للسؤال الاخير لتحويل عدد ASCII إلى عدد يجب طرح 48 من العدد الASCII ولعمل العكس يجب جمع العدد 48 وليس كما ذكرت.

مافهمت ليش انت طرحت 48 !!!

من وين جت هذي ال 48 ؟؟؟

اذا ماعليك امر ممكن توضح لي ذي النقطه:)

عارفه ازعجتك وغثيتك بس كله في ميزان حسناتك :D

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

السلام عليكم

الرقم 1 بالباينري هو 0001 اما الحرف 1 فهو فى قائمة الASCII يرمز له بالعدد 49 ....

إذاً للحصول على الرقم 1 يمكننا عمل التالي

49-1=48

وبنفس الطريقة يمكن التعامل معى جميع الارقام

الرقم 0 هو 0000 والحرف 0 فى الASCII يحمل القيمة 48 إذاً

48-0=48

اظن الصورة واضحة الان

والسلام عليكم

ملاحظة

الارقام التى استخدمتها هى بنظام العشري, اما بالهيكس فالعدد 48 = 31h;; والحرف h يستخدم للدلالة على انه هكس..

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

اخوووووووووووي احمد ..يعطيك الف الف عاافيه وعسااك على القووه اخوي لا عدمنا هالطله <<- :D

بس ياخووي ورا ما تحطو في تواقيعكم اوقات تواجدكم في المنتدى بما انكم شخصياات مهمه :D عشان نعرف متى نلقااكم <<=- اقتراح فقط ..

تسلم اخوي مره ثانيه لاخلا ولا عدم :)

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

جزاك الله خير وياريت تحاولي تكتبي باللغة العربية الفصحى لاني بعض الاحيان يصعب علي الفهم عندما يكتب الاعضاء باللهجات الدارجة ...

بالنسبة لساعات تواجدنا فلا يوجد وقت محدد ولكن انا شخصياً ازور المنتدي بشكل مستمر ولو تغيبت فانا لا اتغيب اكثر من 6 ساعات على اقصي حد...

اما فى حالة السفر او الحالات التى يطول فيها الغياب فاغلب المشرفين يكتبو فى تواقيعهم سبب ومدة الغياب...

تقبل الله منا ومنكم الصيام والقيام ...

والسلام عليكم

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

ولا يهمك يا خوووي وهذا اعادة الرد السابق :

اخوووووووووووي احمد ..يعطيك الف الف عاافيه وعسااك على القووه اخوي عسانا ما ننحرم من تواجدك هنااا ..

بس ياخووي ليش اما تكتبوو في تواقيعكم اوقات تواجدكم في المنتدى بما انكم شخصياات مهمه عشان نعرف متى نلقااكم <<=- اقتراح فقط ..

تسلم اخوي مره ثانيه لاخلا ولا عدم ..

============

:unsure: <<-= دامك تتواجد كل 6 ساعات الله يعينك تتحملني ليما ينتهي كورس الاسمبلي حقي .. :rolleyes:

====

تقبل الله منا ومنكم الصيام والقيام ...

آجمعين يا رب العالمين ..

====

والف شكر لك للمره المليون :)

تم تعديل بواسطه ^_^tlE proGrmMeR^_^
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

اخوووي احمد لا هنت ابي اسأل سؤال ..

ذلحين وانا اذااكر التبس علي شي في الــone`s complement و Tow`s complement

لما يكون عندنا العدد موجب مثل العدد 115 بالديسمل عشان نوجد الونس والتوووز لازم نوجد الباينري بالنسبه للعدد 115 الباينري له هو 01110011

وبمان ان العدد موجب يكون الونس والتوز هو العدد نفسه صح ؟؟

والا بس يكون الونس نفس الباينري والتوز اضيف عليه واحد ؟؟؟

نووورني الله ينورك ايامك ..

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

السلام عليكم

115 بالباينري تصبح 01110011

لتحويلها ل 115- نقوم نقوم بتحويلها لالــone`s complement

10001100

والان لتحويلها لTow`s complement نضيف العدد 1

10001101

والسلام عليكم

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

كيف تاخد مادة الاسيمبلى قبل ان تدرسو مادة logic design

او مقدمة فى الحاسوب

؟؟؟؟؟؟ *-)

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
زوار
This topic is now closed to further replies.

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .