المعالجات الدقيقة البرمجة والمواجهة والتطبيق

المحتويات

الإهداء

عرض الكتاب

الفصل الأول : عصر الميكروبروسيسور                                         1

1-1 عصر الميكروبروسيسور                                                                                                        3

1-2 أين يقع المعالج في داخل الميكروكومبيوتر ؟                                                                 5

1-2-1 الذاكرة                                                                                                             6

1-2-2 وحدات الإدخال والإخراج                                                                                  7

1-2-3 وحدة المعالجة المركزية                                                                            8

1-3 ماذا تعني هذه الألفاظ ؟                                                                                                       8

1-3-1 الميكروكومبيوتر والميكروبروسيسور                                                                     8

1-3-2 البرمجة والبناء software and hardware                                9

1-3-3 الأمر والبرنامج                                                                                                 10

1-3-4 لغات البرمجة                                                                                       10

1-3-5 البت والبايت                                                                                                    12

1-4 تمارين                                                                                                                              12

الفصل الثاني : البناء المعماري للمعالج                                                                                15

2-1 مقدمة                                                                                                                               17

2-2 المهام الأساسية المطلوبة من المعالج                                                                              17

2-3 أجزاء المعالج الأساسية                                                                                                         18

2-4 المسجلات والعدادات في شريحة المعالج                                                                                   18

2-4-1 مسجل التراكم accumulator                                                                                  19

2-4-2 عدد البرنامج instruction counter                                                         20

2-4-3 مسجل وفاكك شفرة الأوامر instruction register & decoder 20

2-4-4 مسجل الحالة status register                                                                    21

2-4-4-1 علم الصفر zero flag                                                                                21

            2-4-4-2 علم الإشارة sign flag                                                                               21

            2-4-4-3 علم الحمل carry flag                                                                 21

            2-4-4-4 علم الباريتى parity flag                                                                        22

            2-4-4-5 علم الحمل النصفى أو البينى half carry flag                              22

2-4-5 مسجل مؤشر المكدسة stack pointer register                                         23

2-4-6 المسجلات عامة الأغراض                                                                                                 23

2-5 نظرة خارجية على شرائح المعالج                                                                               25

            2-5-1 مسار العناوين address bus                                                                        26

            2-5-2 مسار البيانات data bus                                                                               26

            2-5-3 خطوط التحكم control lines                                                                        27

2-6 شرائح المعالجات ذات 8 بت 8 bit microprocessors                                    30

            2-6-1 الشريحة intel 8085                                                                                   30

            2-6-2 المعالج z80                                                                                                     30

2-7 تمارين                                                                                                                              33

الفصل الثالث : برمجة المعالج                                                                                           35

3-1 مقدمة                                                                                                                               37

3-2 لغات الحاسب                                                                                                                    37

3-3 ما هو الأمر ؟                                                                                                                     37

3-4 ما هو البرنامج ؟                                                                                                                38

3-5 كيف يقوم المعالج بتنفيذ البرنامج ؟                                                                           39

3-6 طريقة كتابة البرنامج للمعالج                                                                                               40

            3-6-1 الشفرات الثنائية binary codes                                                      40

            3-6-2 الشفرات الستعشرية hexadecimal codes                                                40

            3-6-3 الشفرات الحرفية mnemonics codes                                           42

3-7 اللغات ذات المستوى العالى high level languages                                          44

3-8 خطوات كتابة برنامج بلغة الأسمبلى                                                                                     45

3-9 تمارين                                                                                                                              48

الفصل الرابع : برمجة المعالج intel 8085                                                                     51

4-1 مقدمة                                                                                                                               53

4-2 مجموعة أوامر الانتقال transfer instructions                                              53

            4-2-1 الأمر MOV                                                                                      53

            4-2-2 الأمر MVI                                                                                                    55

            4-2-3 الأمر LXI                                                                                                      57

4-2-4 الأمران STA و LDA                                                                                   60

4-2-5 الأمران LHLD و SHLD                                                               61

4-3 تمارين                                                                                                                              62

4-4 مجموعة أوامر الحساب arithmetic instructions                                        63

            4-4-1 الأمران ADD و SUB                                                                                  64

            4-4-2 الأمران ADI و SUI                                                                          66

            4-4-3 الأمران ADC و ABB                                                                                 67

            4-4-4 الأمران INR و DCR                                                                                   69

            4-4-5 الأمران INX و DCX                                                                                   71

4-5 تمارين                                                                                                                              71

4-6 مجموعة أوامر القفز jump instructions                                                         73

4-6-1 القفز غير المشروط unconditional jump                                       73

            4-6-2 القفز المشروط conditional jump                                                   73

4-7 مهمة أخرى للأسمبلر                                                                                                          75

            4-7-1 الأمر والمعاملات                                                                                                75

            4-7-2 التعليق comment                                                                           77

            4-7-3 العمة label                                                                                        78

4-8 أوامر الإدخال والإخراج input output instructions                                   79

4-9 مجموعة أوامر المنطق logic instructions                                                        83

4-10 كيفية الاتصال بالذاكرة memory addressing                                             85

4-10-1 الطريقة المباشرة direct method                                                  85

            4-10-2 الطريقة غير المباشرة indirect method                                        85

4-11 تمارين                                                                                                                           95

الفصل الخامس : برمجة المعالج z80                                                                                99

5-1 مقدمة                                                                                                                               101

5-2 مجموعة أوامر الانتقال transfer instructions                                              101

            5-2-1 نقل معلومة من مسجل إلى مسجل آخر                                                      101

            5-2-2 تحميل مسجل بثابت أو معلومة فورية                                                     102

            5-2-3 نقل معلومة من مسجل إلى الذاكرة والعكس                                                            105

                        5-2-3-1 الطريقة المباشرة direct addressing                             106

                        5-2-3-2 الطريقة غير المباشرة indirect addressing                   107

                        5-2-3-2 طريقة الفهرسة indexed addressing                          109

5-3 تمارين                                                                                                                              109

5-4 مجموعة أوامر الحساب arithmetic instructions                                        110

            5-4-1 الأمران ADD و SUB                                                                                  110

            5-4-2 الأمران ADC و SBC                                                                                  113

            5-4-3 الأمران INC و DEC                                                                                    115

            5-4-4 العمليات الحسابية على أزواج المسجلات                                                   115

            5-4-5 أمر المقارنة compare instruction                                              117

5-5 تمارين                                                                                                                              118

5-6 مجموعة أوامر القفز jump instructions                                                         119

            5-6-1 القفز غير المشروط unconditional jump                                       119

            5-6-2 القفز المشروط conditional jump                                                   120

            5-6-3 القفز النسبي relative jump                                                                       120

5-7 مهمة أخرى للأسمبلر                                                                                                          121

5-8 أوامر الإدخال والإخراج input output instructions                                    121

5-8-1 أوامر الإدخال input instructions                                                            122

5-8-2 أوامر الإخراج output instructions                                             123

5-9 مجموعة أوامر المنطق logic instructions                                                        123

5-10 تمارين                                                                                                                           141

الفصل السادس : المعالج من البداية حتى النهاية                                                                  145

6-1 مقدمة                                                                                                                               147

6-2 الجمع الثنائي binary addition                                                                      147

            6-2-1 دائرة نصف المجمع half adder                                                       148

            6-2-2 دائر الجمع الكامل full adder                                                                       149

6-3 الطرح الثنائي binary subtraction                                                               150

6-4 وحدة الحساب والمنطق arithmetic and logic unit                          154

6-5 مسجل التراكم accumulator register                                                         157

6-6 إضافة ذاكرة للمعالج الافتراضي                                                                                             161

6-7 تمارين                                                                                                                              165

الفصل السابع : أساسيات مواجهة المعالج                                                                            167

7-1 مقدمة                                                                                                                               169

7-2 فصل buffering  خطوط المعالج                                                                            169

            7-2-1 ماذا تعني بكلمة فصل ؟                                                                          169

            7-2-2 متى تحتاج لفصل خطوط المعالج ؟                                                                         170

7-3 البوابات ثلاثية المنطق tristate logic gates                                                   172

7-3-1 بوابات المنطق الثنائي                                                                            174

7-3-2 البوابات ثلاثية المنطق                                                                            175

7-4 الماسك latch                                                                                                                   177

7-5 بعض الشرائح التي تستخدم في فصل المسارات                                                                         178

            7-5-1 الشريحة 74244 عازل ثماني ثلاثي المنطق                                                        178

            7-5-2 الشريحة 74245 فاصل ذو ثمان بتات ثنائي الاتجاه ثلاثي المنطق                         179

7-5-3 الشريحة 74374 فاصل ماسك ذو ثمان بتات                                                      181

7-6 تمارين                                                                                                                              182

الفصل الثامن : فصل مسارات المعالج                                                                                               183

8-1 مقدمة                                                                                                                               185

8-2 لماذا مسار العناوين ؟                                                                                                           186

8-3 لماذا مسار التحكم                                                                                                    188

8-4 تهيئة مسارات المعالج 8085 لعملية المواجهة                                                                       190

            8-4-1 مسار العناوين للمعالج 8085                                                                            191

            8-4-2 مسار البيانات للمعالج 8085                                                                            192

            8-4-3 مسار التحكم للمعالج 8085                                                                              194

8-5 تهيئة مسارات المعالج Z80 لعملية المواجهة                                                                         196

8-6 تمارين                                                                                                                              200

الفصل التاسع : مواجهة الذاكرة memory interfacing                                            203

9-1 مقدمة                                                                                                                               205

9-2 أساسيات بناء ذاكر الحاسب                                                                                                206

9-3 كيف سنوصل الذاكرة على المعالج ؟                                                                            210

            9-3-1 مثال توضيحي                                                                                      210

            9-3-2 نظام بلوكات الذاكرة                                                                                           210

            9-3-3 بناء البلوكات من شرائح                                                                                     213

9-4 تمارين                                                                                                                              220

الفصل العاشر : الإدخال والإخراج                                                                                                 221

10-1 مقدمة                                                                                                                            223

10-2 طرق إرسال واستقبال المعلومات الرقمية                                                                   225

10-3 الطريقة الأولى من طرق الإدخال والإخراج باستخدام الأمرين IN و OUT                  227

            10-3-1 دائرة بوابة الإخراج output port                                                  228

            10-3-2 دائرة بوابة الإدخال input port                                                     234

10-4 الطريق الثانية من طرق الإدخال والإخراج

باستخدام خريطة الذاكرة memory map                                                       236

10-4-1 دائرة بوابة الإخراج باستخدام خريطة الذاكرة                                        238

10-4-2 دائرة بوابة الإدخال باستخدام خريطة الذاكرة                                        239

10-5 البوابات القابلة للبرمجة                                                                                       241

10-5-1 تركيب الشريحة 8255 A                                                                242

10-5-2 برمجة الشريحة 8255 A                                                                244

10-5-3 حالات modes تشغيل الشريحة 8255 A                                      248

            10-5-3-1 الحالة صفر mode zero                                                           249

            10-5-3-2 الحال واحد mode one                                                            252

            10-5-3-3 الحالة اثنين mode two                                                           258

10-6 تمارين                                                                                                                           258

الفصل الحادي عشر : التحكم في إشارة مرور                                                                                    261

11-1 مقدمة                                                                                                                            263

11-2 تركيب الدائرة                                                                                                                 263

            11-2-1 مثال توضيحي                                                                                               264

11-3 الأطراف الأخرى للمعالج 8085                                                                           266

            11-3-1 إشارات التزامن clock                                                                                 266

11-3-2 بدء وإعادة التشغيل                                                                                         267

11-3-3 الطرفان hold و hlda                                                                                  269

11-3-4 الطرف ready                                                                                             270

11-3-5 طرفي الحالة so و si                                                                           271

11-3-6 أطراف المقاطعة                                                                                               272

11-3-7 الطرفان sid و sod                                                                           272

11-4 الأطراف الأخرى للمعالم Z80                                                                             272

            11-4-1 أطراف المقاطعة                                                                                               272

            11-4-2 الطرف RFSH                                                                                           273

            11-4-3 الطرف HALT                                                                                           273

            11-4-4 الطرف WAIT                                                                                           273

            11-4-5 الطرف MI                                                                                       274

            11-4-6 الطرف CLK                                                                                              274

11-5 إشارات المرور                                                                                                                  274

11-6 تمارين                                                                                                                           282

الفصل الثاني عشر : البرامج الفرعية subroutines                                                       283

12-1 مقدمة                                                                                                                            285

12-2 ما هو البرنامج الفرعي ؟                                                                                       285

12-3 كيف يعد المعالج إلى نفس المكان الذي خرج منه ؟                                                      287

12-4 حساب أزمنة التأخير                                                                                                       291

12-5 تمارين                                                                                                                           294

الفصل الثالث عشر : المقاطعة interrupt                                                                                    297

13-1 مقدمة                                                                                                                            299

13-2 طريقة طرق الأبواب لخدمة الأجهزة المحيطة polling                                           299

13-3 المقاطعة                                                                                                                           301

13-4 مقاطعة المعالج 8085                                                                                                      302

            13-4-1 الخطوط RST7.5 و RST6.5 و RST5.5                                   303

            13-4-2 الخط TRAP                                                                                              312

            13-4-2 الخط INTR                                                                                                313

            13-4-4 كيف يتم تحديد العنوان الذي سيتم القفز إليه

في حالة المقاطعة INTR ؟                                                                                   314

13-5 مقاطعة المعالج Z80                                                                                                        315

            13-5-1 الخط MMI                                                                                                 315

            13-5-2 الخط INT                                                                                       317

13-6 تمارين                                                                                                                           321

الفصل الرابع عشر : التركيب الهيكلي للمعالج intel/8086/8088                                 323

14-1 مقدمة                                                                                                                            325

14-2 نظرة داخلية على محتويات المعالج 8086/8088                                                 326

14-3 نظرة تفصيلية على مسجلات المعالج 8086/8088                                                            327

14-3-1 المسجلات عامة الأغراض                                                                                  329

14-3-2 المسجلات الخاصة                                                                                           332

14-4 تجزئ الذاكرة memory segmentation                                                   332

            14-4-1 مسجل تجزئ البرامج CS                                                                              335

            14-4-2 مسجل تجزئ البيانات DS                                                                335

            14-4-3 مسجل تجزئ المكدسة SS                                                                              335

            14-4-4 مسجل التجزئ الإضافي ES                                                                 336

            14-4-5 مسجل الأعلام SR                                                                                        336

14-5 طرق العنونة addressing modes                                                                338

            14-5-1 عنونة المسجل                                                                                                339

            14-5-2 العنونة الفورية                                                                                              339

            14-5-3 العنونة المباشرة                                                                                              340

            14-5-4 العنونة الغير المباشرة                                                                          340

14-5-5 عنونة القاعدة زائد الفهرسة                                                                 341

14-5-6 العنونة النسبية                                                                                              341

14-6 تمارين                                                                                                                           342

الفصل الخامس عشر : برمجة المعالج intel/8086/8088                                              345

15- 1 مقدمة                                                                                                                           347

15-2 خطوات كتابة وتنفيذ برامج لغة التجميع                                                                347

15-3 مكونات برنامج الأسمبلي                                                                                                 348

15-4 أوامر لغة الإسمبلي                                                                                                           353

15-5 مجمعة أوامر الانتقال                                                                                                       353

15-6 الديبجر debugger                                                                                        356

            15-6-1 إظهار محتويات المسجلات                                                                               356

            15-6-2 عرض أوامر الأسمبلي ابتداء من عنوان معين                                           357

            15-6-3 عرض محتويات جزء من الذاكرة                                                                       358

            15-6-4 تنفيذ البرنامج حتى عنوان معين                                                                      358

            15-6-5 متابعة تنفيذ البرنامج عن طريق تنفيذ عدد n من الخطوات                      359

            15-6-6 تغيير محتويات عنوان في الذاكرة                                                                      359

            15-6-7 الخروج من الديبجر                                                                            360

15-7 تمارين                                                                                                                           360

15-8 أوامر القفز                                                                                                                      361

            15-8-1 القفز غير المشروط                                                                                            361

            15-8-2 القفز المشروط                                                                                      361

            15-8-3 الأمر LOOP                                                                                             363

15-9 أول خطوات التعامل مع الذاكرة                                                                             364

            15-9-1 الطريقة المباشرة                                                                                              364

15-9-2 الطريقة غير المباشرة                                                                            364

15-10 أوامر الحساب                                                                                                  366

15-11 أوامر المنطق                                                                                                                  374

15-12 أوامر الإزاحة والدوران                                                                                      376

15-3 تمارين                                                                                                                           383

الفصل السادس : مواجهة المعالج 8086/8088                                                               385

16-1 مقدمة                                                                                                                            387

16-2 الوظائف المختلفة لأطراف الشريحة 8086/8088                                                            387

16-2-1 نبضات الساعة                                                                                               393

16-3 عزل مسارات المعالج 8086                                                                                             393

16-4 مواجهة الشريحة 8086/8088 مع الذاكرة                                                        394

16-5 الإدخال والإخراج من وإلى المعالج 8086/8088                                                   399

16-6 شريحة مواجهة لوحة المفاتيح القابلة للبرمجة 8279                                             402

16-7 المؤقت القابل للبرمجة 8254                                                                                          404

16-8 الاتصالات القابلة للبرمجة 8251                                                                                     411

16-9 الاتصال المباشر مع الذاكرة 8237 A                                                                                413

16-10 المواجهة مع المعالجات الحسابية المساعدة 80 x 87                                             414

16-11 تمارين                                                                                                                         415

الفصل السابع عشر : ثم ماذا ؟ What else                                                                    417

17-1 مقدمة                                                                                                                            419

17-2 المعالج 80186                                                                                                  419

            17-2-1 أطراف المعالج 80186                                                                                  421

            17-2-2 برمجة المعالج 80186                                                                                  425

17-3 المعالج 80286                                                                                                  425

            17-3-1 التركيب الهيكلي للمعالج 80286                                                      426

17-4 المعالج 80386                                                                                                  428

            17-4-1 التركيب الهيكلي للمعالج 80386                                                      428

            17-4-2 تنظيم الذاكرة للمعالج 80386                                                                        428

            17-4-3 نظام الإدخال والإخراج في المعالج 80386                                            431

            17-4-4 أطراف المعالج 80386                                                                                  431

            17-4-5 مسجلات المعالج 80386                                                                               433

17-5 الذاكرة المخبأة Cache memory                                                                   434

17-6 المعالج 80486                                                                                                  435

17-7 السياسة والأوامر instruction pipelining                                                  436

17-8 سلسة معالجات بنتيم Pentium processors                                               441

17-9 المعالج بنتيم برو Pentium pro processor                                               443

17-10 تمارين                                                                                                                         445

الملحق الأول : الحساب الرقمي                                                                                          447

مراجع الكتاب                                                                                                                455

 

تحميل كتاب المعالجات الدقيقة البرمجة والمواجهة والتطبيق

Author photo
Publication date:
Author: Farahat
أنا مهندس حاسبات وأنظمة، أمتلك شغفًا كبيرًا بمجالات التقنية المتنوعة، وأسعى دائمًا لفهم وتطوير الأنظمة المختلفة سواء كانت كهربائية، إلكترونية أو ميكانيكية. أؤمن بأهمية الدمج بين هذه المجالات لتقديم حلول هندسية متكاملة وفعالة. لدي اهتمام خاص بمجال البرمجة، وأتقن العمل بعدة لغات مثل C و++C وPython وJava، وأسعى باستمرار لتعلم تقنيات جديدة وتوسيع معرفتي العملية والنظرية. تساعدني خلفيتي المتعددة التخصصات على الربط بين العتاد (الهاردوير) والبرمجيات، مما يمنحني مرونة في التعامل مع التحديات التقنية المختلفة

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *