EETE 2340 – DIGITAL LOGIC FUNDAMENTALS
Homework Assignment 1 - Solutions
حلول الواجب الأول - الفصل الثاني
Number Conversions Binary Arithmetic Complements BCD & Hex
ACADEZI
www.acadezi.com
Step-By-Step Guide · حل بالخطوات
معلومات الواجب (Homework Details):
المادة: EETE 2340 – DIGITAL LOGIC FUNDAMENTALS
المرجع: "Digital Fundamentals", 11th Edition, by Thomas Floyd
الموعد النهائي: Saturday May 30, 2026
Q1
Convert 1111111.111112 into decimal.
لتحويل العدد نقسمه إلى جزء صحيح وجزء كسري، ونضرب كل بت في وزنه:
Integer part: 11111112 = 26 + 25 + 24 + 23 + 22 + 21 + 20 = 64 + 32 + 16 + 8 + 4 + 2 + 1 = 127 Fractional part: .111112 = 2-1 + 2-2 + 2-3 + 2-4 + 2-5 = 0.5 + 0.25 + 0.125 + 0.0625 + 0.03125 = 0.96875 Add both parts: 127 + 0.96875
Answer: 127.9687510
Q2
What is the highest decimal number represented by eleven binary digits.
أكبر رقم عشري يمكن تمثيله بـ n من الخانات الثنائية هو (2n - 1):
Formula for highest number with n bits: 2n - 1 Here, n = 11. Value = 211 - 1 Value = 2048 - 1 = 2047
Answer: 2047
Q3
How many binary digits are required to represent decimal 16010.
نبحث عن أصغر قوة للرقم 2 تكون أكبر من أو تساوي 160:
We need to find n such that 2n-1 ≤ 160 < 2n 27 = 128 (Too small, 7 bits is not enough) 28 = 256 (Enough, so 8 bits are required) Verification: 16010 = 128 + 32 = 101000002 (which has exactly 8 digits).
Answer: 8 binary digits
Q4
Convert decimal 0.097510 into binary using sum of weights method.
نبحث عن أوزان الكسور (0.5, 0.25, 0.125, 0.0625 ...) التي مجموعها يعطي 0.0975:
Fractional weights: 2-1=0.5, 2-2=0.25, 2-3=0.125, 2-4=0.0625, 2-5=0.03125... 0.0975 is smaller than 0.5, 0.25, and 0.125. Largest weight to fit: 2-4 (0.0625) 0.0975 - 0.0625 = 0.035 Next weight to fit: 2-5 (0.03125) 0.035 - 0.03125 = 0.00375 Next weight to fit: 2-9 (0.001953125) 0.00375 - 0.001953125 = 0.001796875 This continues... The binary value is approx: 2-4 + 2-5 + 2-9...
Answer: ~ 0.000110001...2
Q5
Convert decimal 6010 into binary using repeated division by 2 method.
نقسم العدد تباعاً على 2 ونسجل الباقي (من الأسفل للأعلى ليكون من MSB إلى LSB):
60 / 2 = 30 Remainder: 0 (LSB) 30 / 2 = 15 Remainder: 0 15 / 2 = 7 Remainder: 1 7 / 2 = 3 Remainder: 1 3 / 2 = 1 Remainder: 1 1 / 2 = 0 Remainder: 1 (MSB) Read remainders from bottom to top.
Answer: 1111002
Q6
Convert decimal 0.873210 into binary using repeated multiplication by 2 method.
نضرب الكسر تباعاً في 2 ونأخذ العدد الصحيح الناتج كقيمة للبت:
0.8732 × 2 = 1.7464 → Integer: 1 (MSB) 0.7464 × 2 = 1.4928 → Integer: 1 0.4928 × 2 = 0.9856 → Integer: 0 0.9856 × 2 = 1.9712 → Integer: 1 0.9712 × 2 = 1.9424 → Integer: 1 Read integers from top to bottom (approx 5 bits precision).
Answer: 0.11011...2
Q7
Perform binary addition 1111 + 1111
نجمع الخانات الثنائية مع مراعاة الحمل (Carry):
Carries: 1 1 1 1 1 1 1 1 + 1 1 1 1 --------- 1 1 1 1 0 Verification in decimal: 15 + 15 = 30 (which is 111102)
Answer: 111102
Q8
Perform binary subtraction 110000 – 1111
نطرح الخانات مع مراعاة الاستلاف (Borrow) من الخانة المجاورة:
1 1 0 0 0 0 - 0 0 1 1 1 1 ------------- 1 0 0 0 0 1 Verification in decimal: 48 - 15 = 33 (which is 1000012)
Answer: 1000012
Q9
Perform binary multiplication 1111 x 1100
نضرب كما في الضرب العادي، وإذا كان البت 1 ننزل العدد مع إزاحته، وإذا كان 0 ننزل أصفار:
1 1 1 1 x 1 1 0 0 --------- 0 0 0 0 (1111 × 0) 0 0 0 0 (1111 × 0) 1 1 1 1 (1111 × 1) 1 1 1 1 (1111 × 1) ------------- 1 0 1 1 0 1 0 0 Verification in decimal: 15 × 12 = 180 (which is 101101002)
Answer: 101101002
Q10
Determine 2’s complement of binary 11000111.
لإيجاد المكمل الثاني، نوجد المكمل الأول (عكس البتات) ثم نجمع 1:
Original Binary: 1 1 0 0 0 1 1 1 1's Complement: 0 0 1 1 1 0 0 0 (Invert all bits) Add 1: + 1 --------------- 2's Complement: 0 0 1 1 1 0 0 1
Answer: 00111001
Q11
Convert binary 101110112 into hexadecimal.
نقسم العدد الثنائي إلى مجموعات من 4 بت من اليمين، ونحول كل مجموعة:
Split into 4-bit groups: 1011 1011 Left group (1011) = 8 + 2 + 1 = 11 in decimal → 'B' in Hex Right group (1011) = 8 + 2 + 1 = 11 in decimal → 'B' in Hex Combine both hex digits.
Answer: BB16
Q12
Convert ABC16 into decimal.
نضرب كل رقم سداسي عشري في القوة المناسبة للأساس 16:
Value of letters: A = 10, B = 11, C = 12 ABC16 = (A × 162) + (B × 161) + (C × 160) = (10 × 256) + (11 × 16) + (12 × 1) = 2560 + 176 + 12 = 2748
Answer: 274810
Q13
Convert decimal 8925 into hexadecimal.
نقسم تباعاً على 16 ونسجل البواقي مع تحويل الباقي فوق 9 إلى أحرف:
8925 / 16 = 557 Remainder: 13 → D (LSD) 557 / 16 = 34 Remainder: 13 → D 34 / 16 = 2 Remainder: 2 → 2 2 / 16 = 0 Remainder: 2 → 2 (MSD) Read from bottom to top.
Answer: 22DD16
Q14
Convert octal 77778 into decimal.
نضرب كل رقم في القوة المناسبة للأساس 8:
77778 = (7 × 83) + (7 × 82) + (7 × 81) + (7 × 80) = (7 × 512) + (7 × 64) + (7 × 8) + (7 × 1) = 3584 + 448 + 56 + 7 = 4095 Shortcut: Since 7 is the max digit in base 8, 77778 = 84 - 1 = 4096 - 1 = 4095
Answer: 409510
Q15
Convert decimal 999910 into octal.
نقسم العدد العشري تباعاً على 8 ونسجل البواقي:
9999 / 8 = 1249 Remainder: 7 (LSD) 1249 / 8 = 156 Remainder: 1 156 / 8 = 19 Remainder: 4 19 / 8 = 2 Remainder: 3 2 / 8 = 0 Remainder: 2 (MSD) Read remainders from bottom to top.
Answer: 234178
Q16
Convert octal 7778 into binary.
نحول كل رقم ثماني إلى ما يقابله في النظام الثنائي بـ 3 بتات:
Convert each digit independently: 7 → 111 7 → 111 7 → 111 Combine them together.
Answer: 1111111112
Q17
Convert binary 101011112 into octal.
نقسم البتات إلى مجموعات من 3 من اليمين إلى اليسار (ونضيف أصفاراً في اليسار إن لزم):
Group by 3 bits: 010 | 101 | 111 2 | 5 | 7 Combine the values.
Answer: 2578
Q18
Convert decimal 1051 into BCD.
في نظام BCD، كل رقم عشري يُكتب بشكل منفصل في 4 بتات:
1 → 0001 0 → 0000 5 → 0101 1 → 0001 Combine them sequentially.
Answer: 0001 0000 0101 0001BCD
Q19
Convert BCD 10011000 and 100001110000 into decimal.
نقسم سلسلة BCD إلى مجموعات من 4 بتات ونستخرج الرقم العشري لكل مجموعة:
First BCD string: 1001 1000 1001 = 9 1000 = 8 → 9810 Second BCD string: 1000 0111 0000 1000 = 8 0111 = 7 0000 = 0 → 87010
Answers: 98 and 870