التحويل من النظام الست عشري إلى النظام العشري في المجمع. برمجة التجميع للمبتدئين والمزيد

1. أنظمة الأرقام الأساسية. إعلانات البيانات في المجمع

الهدف من العمل: تعريف الطلاب بأنظمة الأرقام - ثنائي، ثماني، سداسي عشري؛ تمثيل البيانات في ذاكرة الكمبيوتر، وتوجيهات تخصيص الذاكرة.

الجزء النظري

أصغر وحدة معلومات يمكن تخزينها في الحاسوب هي بت (م. قليل - ثنائية ناري ديجي ر )، أي. 0 أو 1. البت هو ذرة من المعلومات، ولا يمكن تقسيمها. يتم تجميع البتات في مجموعات مكونة من 8 وحدات لتكوين بايت. المعلومات التي يتم معالجتها بواسطة الكمبيوتر هي سلسلة من الأرقام الثنائية. من 8 بتات، يمكن تشكيل 256 مجموعة. تُستخدم هذه المجموعات لترميز الأحرف الكبيرة والصغيرة والأرقام والأحرف الخاصة.

لقياس المعلومات على جهاز الكمبيوتر، يتم استخدام الكميات التالية:

1 كيلو بايت = 1 كيلو بايت = 2 10 بايت = 1024 بايت؛

1 ميجابايت = 1 ميجابايت = 220 بايت = 1024 كيلو بايت؛

1 جيجا بايت = 1 جيجا بايت = 230 بايت = 1024 ميجا بايت.

أنظمة الأرقام

نظام الأرقام هو مجموعة من القواعد والأرقام لتمثيل الأرقام. بالنسبة لأي نظام أرقام موضعي، يكون عدد الأرقام المراد تمثيلها يساوي أساس نظام الأرقام، على سبيل المثال، بالنسبة للنظام الثنائي، الأساس هو الرقم 2، وبالتالي، لتمثيل الأرقام، يكون الرقمان 0 و1 اللازمة، لنظام الأرقام السداسي العشري هو 0، 1، 2، ...، 9، A، B، C، D، E، F، حيث تتوافق الحروف مع القيم 10، 11، 12، 13، 14 و 15 على التوالي.

للتمييز بين أنظمة الأرقام، يتم وضع حرف في نهاية الرقم: B للثنائي، Q للثماني، D للعشري، وH للست عشري. بالنسبة للرقم العشري، D غير مطلوب.

إذا تم كتابة رقم في نظام الأرقام b-ary في النموذج

Nr(b) = C n C n-1 C n-2 … C 2 C 1 C 0 , D 1 D 2 D 3 … ,

ثم في نظام الأرقام العشري يمكن تمثيل قيمتها كمجموع الأرقام مضروبة في قاعدة نظام الأرقام إلى قوة تساوي رقم موضع الرقم في الرقم (يبدأ الترقيم من 0، من اليمين إلى اليسار):

Nr(10) = C n *b n +C n-1 *b n-1 +…+C 2 *b 2 +C 1 *b 1 +C 0 *b 0 +D 1 *b -1 +D 2 * ب –2 +د 3 *ب –3 +...

على سبيل المثال:

دعونا نعطي رقمين ثنائيين 11b، 1100011b. دعونا نحول هذه الأرقام إلى نظام الأرقام العشري:

11ب =1*2 1 +1*2 0 =3;

11100011ب = 1*2 7 +1*2 6 +1*2 5 +0*2 4 +0*2 3 +0*2 2 +1*2 1 +1*2 0 = 227.

دعونا نلقي نظرة على أمثلة لتحويل رقم ثماني إلى نظام الأرقام العشري:

11q = 1*8 1 +1*8 0 = 9;

210ف =2*8 2 +1*8 1 +0*8 0 =136.

مثال لتحويل الأرقام السداسية العشرية إلى أرقام عشرية:

11س = 1*16 1 +1*16 0 =17;

CA0h= C*16 2 +أ*16 1 +0*16 0 = 3232

لتحويل الأرقام من النظام العشري إلى ثنائي أو سداسي عشري، يتم استخدام تقسيم الأعداد الصحيحة. يتم تقسيم الرقم على أساس نظام الأرقام حتى يتم الحصول على باقي غير قابل للتجزئة. يتم تقسيم حاصل القسمة مرة أخرى وتنتهي العملية عندما يصبح الناتج أيضًا غير قابل للقسمة. تتم كتابة الباقي الذي تم الحصول عليه أثناء القسمة بترتيب عكسي. الرسم البياني يوضح تحويل الرقم 25 إلى نظام الأرقام الثنائية ونتيجة لذلك نحصل على الرقم 11001b وكذلك تحويل الرقم 418 إلى نظام الأرقام الست عشري ونتيجة لذلك نحصل على الرقم 1A2h، بما أن الرقم عشرة هو A.

لتحويل الأرقام من النظام السداسي العشري إلى النظام الثنائي والعكس، يتم استخدام الحقيقة التالية: كل رقم سداسي عشري يتوافق مع رقم ثنائي مكون من أربعة بتات والعكس صحيح، كما هو موضح في الجدول. وبالتالي، عند التحويل من النظام السداسي العشري إلى النظام الثنائي، من الضروري تدوين الكود الثنائي الخاص به لكل رقم سداسي عشري، وعند التحويل العكسي، يتم تقسيم الرقم الثنائي من اليمين إلى اليسار إلى مجموعات من أربعة أرقام والمراسلات السداسية العشرية مكتوب لهم.

جدول المراسلات بين الأرقام السداسية العشرية والأرقام الثنائية.

على سبيل المثال، دعونا نحول الرقم 1FDh إلى تمثيل ثنائي:

1FDh = 0001-1111-1101b = 111111101b

لنقم بتحويل الرقم الثنائي 1110100101b إلى تمثيل سداسي عشري: 0011-1010-0101b = 3A5.

تمثيل الأعداد الصحيحة في ذاكرة الكمبيوتر

يستخدم نظام الأرقام الثنائية لتمثيل المعلومات على جهاز الكمبيوتر. لتخزين الأعداد الصحيحة، يتم استخدام عدد ثابت تمامًا من البتات: 8، 16، 32، 64. في المواضع الثنائية n، يمكنك كتابة عدد صحيح بعلامة في النطاق من -2 n-1 إلى 2 n-1 -1. يتم ترقيم المواضع من 0 إلى n-1 من اليمين إلى اليسار. على سبيل المثال، سيتم تمثيل الرقم 67 في ثمانية مواضع ثنائية بالرقم 01000011b. يمكن تمثيل الأرقام غير الموقعة في النطاق من 0 إلى 2 n -1.

يمكن تخزين عدد صحيح في شكل مكمل اثنين أو شكل مكمل اثنين. لتمثيل إشارة رقم ما، يتم استخدام بتة تسمى بت الإشارة. إنه في الموضع n-1 وهو الجزء الأكثر أهمية في الرقم. بالنسبة للأرقام الموجبة، يكون هذا البت صفرًا، وبالنسبة للأرقام السالبة يكون واحدًا.

الكود المباشر تستخدم لتخزين الأرقام الإيجابية أو غير الموقعة.

رمز إضافي تستخدم لتخزين الأرقام السالبة. للحصول على تمثيل رقم في الكود التكميلي، يتم أولاً العثور على الكود المباشر لمعامل الرقم، ثم الكود العكسي له. يتم الحصول على الرمز العكسي عن طريق عكس كل رقم في التمثيل الثنائي للرقم: يتم تحويل 0 إلى 1، ومن 1 إلى 0. وفي الخطوة الأخيرة، تتم إضافة 1 إلى الرمز العكسي.

على سبيل المثال، لتمثيل الرقم -65 لدينا:

01000001ب كود الرقم المباشر +65

10111110b رمز الإرجاع

10111111b رمز الرقم الإضافي -65

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

أنواع البيانات

بايت. يشغل نوع البيانات هذا بايت واحد (8 بت). باستخدام هذا النوع، يمكنك تشفير عدد صحيح موقّع في النطاق من -128 إلى +127 أو عدد صحيح غير موقّع في النطاق من 0 إلى 255، أي حرف ASCII يتم ترميزه أيضًا كعدد صحيح. توجيه التعريف – دي.بي.(تعريف البايت).

كلمة. يشغل نوع البيانات هذا 2 بايت (16 بت). يمكن أن يحتوي متغير من هذا النوع على عدد صحيح في النطاق من -32768 إلى +32767 أو من 0 إلى 65535، أو حرفين ASCII أو عنوان ذاكرة نسبي من النوع القريب. في هذه الحالة، تتم الكتابة إلى الذاكرة على النحو التالي: الجزء السفلي من الرقم يقع في العنوان المنخفض، والجزء العلوي يقع في العنوان العالي. وهذا صحيح بالنسبة لأنواع البيانات الأخرى أيضًا. على سبيل المثال، إذا كان الرقم الصحيح السداسي العشري 1234h موجودًا في العنوان 1000h، فسيتم وضع الجزء ذو الترتيب المنخفض 34h في العنوان 1000h، وسيتم تحديد موقع الجزء 12h في العنوان 1001h. توجيه التعريف – دويتشه فيله(تعريف الكلمة).

كلمة مزدوجة- 4 بايت (كلمتان) يمكن أن تحتوي على عدد صحيح 32 بت موقّع أو غير موقّع، أو رقم فاصلة عائمة، أو عنوان ذاكرة 32 بت، أو 4 أحرف ASCII. عند تخزين عنوان، يقع عنوان المقطع في البايتتين العاليتين ويكون الإزاحة في البايتتين المنخفضتين من الذاكرة. توجيه التعريف – د(تعريف الكلمة المزدوجة).

QWORD- 8 بايت. يمكن أن يكون عددًا صحيحًا موقّعًا أو غير موقّع، أو رقمًا، أو رقمًا عائمًا مزدوج الدقة. توجيه التعريف – دي كيو(تعريف رباعية).

تإن بايت- 10 بايت. يستخدم لتخزين البيانات في الذاكرة الرئيسية أو المعالج الثانوي. يمكن أن يكون رقم BCD محزومًا، أو رقمًا صحيحًا ممتدًا، أو رقمًا عائمًا ممتدًا. توجيه التعريف - د.ت.(حدد عشرة بايت).

بناء الجملة العام لتعريف البيانات هو:

< اسم> < يكتب> < قائمةقيم>

< اسم> < يكتب> < رقم>مكرر(تعبير),

أين اسم- معرف، يكتب- أحد توجيهات تخصيص الذاكرة التي تمت مناقشتها أعلاه، قائمة القيم– قائمة يمكن أن تحتوي على ثوابت أحرف أو رقمية. وقد يحتوي أيضًا على الرمز ? ، إذا كانت القيمة غير محددة، أو العنوان - اسم متغير أو تسمية، أو سلسلة من أحرف ASCII محاطة بعلامات اقتباس أو فواصل عليا. التوجيه مكرريحدد تكرار القيم المحددة بواسطة التعبير المحدد <число> مرة واحدة. تعبيريمكن أن يكون ثابتًا أو ثوابت أو عوامل حسابية أو قائمة قيم أو رمزًا ? ، إذا كانت القيمة غير محددة.

على سبيل المثال،

var_a db 2 dup (0, 3 dup (1)) ; يعادل var_a db 0,1,1,1,0,1,1,1 var_b db 1, 2, 3, ?, ? adr_a dw var_a adr_b3 dd var_b+3

دعونا نحدد حجم الذاكرة المخصصة لكل من المتغيرات التالية:

م1 ديسيبل 4، 5، 1، 6؛ 4*1=4 بايت m2 ديسيبل “xzyqw” ؛ 5*1=5 بايت m3 dw 12 dup(?) ؛ 12*2=24 بايت m4 dd 345h , 234h ; 2*4=8 بايت

m1 ديسيبل 4, 5, 1, 6 ؛ 4*1=4 بايت m2 ديسيبل “xzyqw” ؛ 5*1=5 بايت m3 dw 12 dup(?) ؛ 12*2=24 بايت m4 dd 345h, 234h; 2*4=8 بايت

إجمالي عدد البايتات المخصصة بواسطة هذه التوجيهات هو 41 بايت. يقع المتغير m1 في العنوان النسبي 00h وm2 – 04h وm3 – 09h وm4 – 021h.

المهام الفردية:

1. تحويل الأرقام العشرية إلى أنظمة الأرقام الثنائية والست عشرية والثمانية:

1)42;31;113 5 )46;35;119 9 ) 49;30;103 13 )29;37;97
2 )45;81;89 6)66;25;110 10 )19;53;101 14 )21;87;98
3 )12;38;118 7 )17;63; 96 11)34;50;107 1 5) 28;45;130
4 )11;43;67 8 )13;69;88 1 2 )14;70;99 16)15;72;100

2. تحويل الأرقام السداسية العشرية إلى أرقام ثنائية:

1)أ45;12;56ب 5)7C;72EB;31DB 9)34أ;6AB;9م 13)2B9;6F1;81B
2)1EF3;5AB;46F 6)3EB;4D8;A61 10)5AB;79F;AB8 14)7CD;2A1;B53
3)A56;5E9;CDE 7)6A3;9D0;8BE 11)9أ;4DE;EF7 15)10ب;87F;CD9
4)3B8;DE1;بي إيه إي 8) قبل الميلاد;7F9;78أ 12)أب;8E4;C17 16)38E;9C7;B89

3. تحويل الأرقام الثنائية إلى أنظمة الأرقام الثمانية والست عشرية:

1) 00101011; 00100110;
01110011
5 ) 11110010; 01101010;
11111100;
9 ) 10000101; 11100010;
11001011
13 ) 00011101; 11111001;
00111101
2 ) 01100001; 01101110;
11110011
6) 00110110; 00111011;
10001100
10 ) 00011101; 01010110;
10110010
14 ) 00011100; 01001100;
01101110
3) 11100100; 01011100; 11000001 7 ) 11010010; 01001100; 11000111 11) 11100010; 10100001; 10001110 1 5 ) 10101001; 11010101; 111001100
4 ) 00001111; 10100101; 10010001 8 ) 11100000 11111000; 01000011 1 2 ) 10100101; 01101100; 11100001 16) 11100111; 01100101; 10110010;

4. قدم الأرقام التالية في الكود التكميلي:

1)-42;-31;-96 5)-46;-35;-94 9) -49;-30;-103 13)-29;-37;-97
2)-52;-41;-93 6)-66;-25;-85 10)-19;-53 ; -101 14)-21;-87;-98
3)-12;-38;-93 7)-17;-63;-99 11)-34;-50;-94 15)-28;-45;-95
4)-11;-43;-67 8)-13;-69;-88 12)-14;-70;-99 16)-15;-72;-89

5. يتم إعطاء التعاريف التالية للمتغيرات:

1) ديسيبل 45،16،76، -6
بديسيبل "اي بي سي دي"
جدو 15 دوب (0)،3،3
د ي د 345 ح
2) أضف 2.24
ب ديسيبل "aaa"، -8.23h،11101b
ج ديسيبل 6 دوب (0)، 45، 6
d dw -7.4Dh.8 مزدوج(0)
3) ديسيبل "تحية"، 10،13
ب ديسيبل -16، -20،13 ساعة، 2 مزدوج (0)
ج دو 62.34،-15
د دد 456C9h,4567
4) ي ي 92.45 ح,90,-54,-67
ب ديسيبل 10 دوب('$'),10.13
ج ديسيبل "أمدتو"،10،13،'$'
d dw 5 dup(؟),7,-80h
5) ديسيبل "lucrarea_1"،10،13
ب ديسيبل 2 دوب(0)
ج dw38,-15,78,41,12
د دد 678EFh,3489,456
6) ديسيبل 12.24 "SSS"
ب ديسيبل "أب"، -8.23h
ج دد 6 دوب(0),45
د داو -7.5 دوب(0)
7) ديسيبل 35.53
ب ديسيبل 10 دوب(''),10,13,“$”
ج داو 5 دوب(0)
د ي د 555 ح
8) ديسيبل 34،6،3،-8،-2
ب ديسيبل "مرحبا"،'$'
ج dw 6 dup(0),'$',10,13
د داو -68.46 ساعة، 7 مضاعفة(0)
9) ديسيبل 45.16
ب ديسيبل 5 دوب (؟)، 10،13، "$"
ج دو 55 دوب(0)
د ي د 34567 ح
10) ديسيبل 76،87،92،45 ساعة
ب ديسيبل 20 دوب('$'),10.13
ج ديسيبل "كويرت"
د داو 10 دوب(0)
11) إضافة 78،34،67
ب ديسيبل "النتيجة"،'$'
ج ديسيبل 16 dup(0),'$',10,13
12) ديسيبل 73،74،75،77،78، -67
ب ديسيبل 15 دوب('؟'),10,13
جد 777 ح
13) ديسيبل 24.76,-56
ب ديسيبل "اي بي سي"، 11101 ب
ج ي د 45.4 دوب (؟)
د داو 4 دوب(0),8,3
14) ديسيبل "testul_nr_2"،13،10
ب ديسيبل -18، -22،18 ساعة، 2 مزدوج (0)
ج dw81,-16,44,18
د دد 568ABh
15) أضف 87.45 ساعة، -9
ب ديسيبل 10 دوب(؟)
ج ديسيبل "test_1$"
د دو 4 دوب (0)،2.7
16) ديسيبل "Matematica"، 10،13
ب ديسيبل 10،20 ساعة،2 مزدوج(0)
ج دوا 60,30,-10,-20,-50
د دد 56789 به

أ) تحديد عدد البايتات المخصصة بواسطة هذه التوجيهات؛
ب) تحديد العناوين التي يوجد بها كل متغير.


أنظمة الأرقام الثنائية والثمانية والعشرية والست عشرية هي أنظمة موضعية. نظام الأرقام الموضعية هو نظام تعتمد فيه قيمة الرقم على موضعه في الرقم؛ وتسمى مواضع الأرقام في الرقم بالطلبات أو الأرقام. أساس نظام الأرقام الموضعية هو العد، وعند الوصول إليه يتم ملء الترتيب التالي للرقم. بخلاف ذلك، فإن أساس نظام الأرقام يساوي عدد الأرقام، بما في ذلك الصفر، التي يتم كتابة الأرقام في هذا النظام.

يسمح المجمع باستخدام الأرقام في النظام الثنائي أو الثماني أو العشري أو الست عشري. بشكل افتراضي، يعامل المجمّع كافة الأرقام التي تظهر في البرنامج على أنها أرقام عشرية. يمكنك الإشارة بوضوح إلى قاعدة الرقم باستخدام العلامات (لإصدار MASM32 11): b أو y - للأرقام الثنائية؛ o أو q - للثماني؛ d أو t - للأرقام العشرية؛ ح - للأرقام السداسية العشرية. تتم كتابة العلامة في نهاية الرقم مع الرقم. إذا تم استخدام أحرف أبجدية (أرقام سداسية عشرية) في رقم، فسيتم كتابة صفر في البداية - وفقًا لقواعد المجمّع، يجب أن تبدأ تسميات الأرقام برقم. على سبيل المثال:

.بيانات var1 بايت 00001111b ؛ 15 في التمثيل الثنائي var2 بايت 00001111y ؛ 15 في التمثيل الثنائي var3 بايت 17o ؛ 15 بالتدوين الثماني var4 بايت 17q ؛ 15 بالتدوين الثماني var5 بايت 15d ؛ 15 بالتدوين العشري var6 بايت 15t ؛ 15 بالتدوين العشري var7 byte 0Fh ؛ 15 بالنظام الست عشري

يمكنك ضبط نوع الأرقام المستخدمة في البرنامج في قسم التوجيهات بتعليمات مثل

.راديكس (قاعدة)

حيث يتم الإشارة إلى قاعدة الأرقام كرقم عشري. على سبيل المثال، وفقا للتعليمات

الجذر 16

يرجع وجود نوعين مختلفين من علامات الأرقام الثنائية والعشرية إلى اعتبارات التوافق بين الإصدارات السابقة من MASM32، والتي لم تكن لديها القدرة على كتابة الأرقام بتنسيق سداسي عشري، مع الإصدارات الأحدث. بالنسبة للأرقام السداسية العشرية، فإن الأرقام العربية ليست كافية، لذلك يتم استكمال سلسلة الأرقام بالحروف:

0, 1, 2, 3, 4, 5, 6, 7, 8, 9, أ, ب, ج, د, ه, و

من السهل أن ترى أن العلامات من الإصدارات السابقة من MASM32 - b وd - هي نفس الأرقام السداسية العشرية، مما يجعل من المستحيل استخدامها مع التوجيه .RADIX 16. يتم تكرار العلامة o بواسطة العلامة q نظرًا لتشابه العلامة الأولى مع الصفر. لهذه الأسباب، العلامات المفضلة هي y، q، t.

في الكمبيوتر، يتم تخزين جميع الأرقام كتسلسلات من الأصفار والواحدات. عندما نكتب رقمًا في نص البرنامج، يتم تنفيذ ترجمته إلى تمثيل يمكن قراءته آليًا بواسطة المجمع، وسيتم كتابة هذا الرقم بالشكل المناسب (الثنائي) في الملف القابل للتنفيذ. لكن يجب علينا نحن أنفسنا تنظيم إخراج رقم من البرنامج بتنسيق مفهوم بالفعل للمستخدم، مما يعني أننا إذا أردنا إظهار رقم للمستخدم، فيجب علينا القيام بما يلي في البرنامج: أ) تحويل الرقم من النظام الثنائي إلى النظام العشري - من التمثيل الآلي إلى التمثيل البشري؛ ب) استبدل الرقم العشري الناتج بالرمز الخاص به، أي بالصورة المقابلة، حيث إن الشاشة تعرض الصور وليس الأرقام.

تتم ترجمة رقم الآلة إلى نظام أرقام معين عن طريق تقسيم هذا الرقم والنتيجة الناتجة بالتسلسل على أساس نظام الأرقام المطلوب. يتم إدخال باقي القسمة في الرقم الأقل أهمية، ويتم تقسيم الحاصل مرة أخرى على أساس نظام الأرقام، ويتم إدخال الباقي في الرقم التالي - وهكذا حتى يصل القسم إلى الصفر. لنفترض أنك تريد تحويل الرقم العشري 250 إلى رقم سداسي عشري:
250 / 16 = 15 والباقي = ا (10)،
15 / 16 = 0، الباقي = ف (15)،
وبالتالي 250 (عشري) = FA (سداسي عشري).

الحد الأقصى للرقم الذي يمكن كتابته إلى بايت هو 255. إذا كان من الضروري، بناءً على نتائج البرنامج، عرض رقم بتنسيق عشري من متغير بايت واحد، فيجب تقسيم هذا الرقم على 10 بما لا يزيد عن ثلاث مرات - في 255 ثلاثة أوامر عشرية. في متغيرات نوع الكلمة (بايتتين) تكون القيمة القصوى 65.535، في متغيرات نوع الكلمة المزدوجة (أربعة بايت) - 4.294.967.295 وفقًا لذلك، يتم تقسيم أرقام الكلمات للتحويل إلى التنسيق العشري على 10 بما لا يزيد عن خمس مرات، مضاعفة كلمة - ليس أكثر من عشر مرات.

رموز الأحرف هي: "0" - 48؛ "1" - 49؛ "2" - 50؛ "3" - 51؛ "4" - 52؛ "5" - 53؛ "6" - 54؛ "7" - 55؛ "8" - 56؛ "9" - 57. من الواضح أنه لتحويل قيمة رقم إلى شكل رمزي، يكفي إضافة 48 إليه.

جزء برنامج يحول متغير بايت إلى شكل رمزي عشري:

. بايت مقسم البيانات 10 ; المقسوم buffer_dec بايت 3 dup (؟) معلمة بايت 255 ... .code start: ... ؛ الحصول على قيم بايت المعلمة في شكل رمزي عشري mov AH, 0 ; إعادة ضبط AH mov AL، المعلمة؛ انسخ متغير البايت إلى مقسم AL DIV؛ قسّم AX على 10 mov buffer_dec, AH ; انسخ باقي القسمة إلى buffer_dec mov AH, 0 ; إعادة تعيين مقسم AH DIV ; قسّم AX على 10 mov buffer_dec, AH ; انسخ باقي القسمة إلى buffer_dec mov buffer_dec, AL ; انسخ الناتج إلى buffer_dec ADD buffer_dec, 48; أضف 48 - نحصل على رمز الرقم "2" ADD buffer_dec, 48 ؛ أضف 48 - نحصل على رمز الرقم "5" ADD buffer_dec, 48 ; أضف 48 - نحصل على رمز الرقم "5"

اضف تعليق

1 المقدمة

2. معلومات عامة عن لغة التجميع

3. جزء البرمجيات

· وصف البرنامج

· مراحل تطور برامج التجميع ___

· برنامج لتحويل الأعداد العشرية إلى أنظمة الأعداد الثنائية والست عشرية

4. المراجع


مقدمة

تنقسم الأدوات التي تضمن عمل تكنولوجيا الكمبيوتر إلى قسمين: الأجهزة والبرامج.

يتضمن الجهاز الأجهزة التالية:

· المعالج المركزي.

· كبش؛

· الأجهزة الطرفية.

جميع الأجهزة المذكورة أعلاه مبنية على دوائر متكاملة (ICs).

الدائرة المتكاملة عبارة عن منتج إلكتروني دقيق يؤدي وظائف تحويل معينة، وله كثافة تعبئة عالية من العناصر والمكونات المترابطة كهربائيًا، ويمثل كلًا واحدًا من حيث متطلبات اختبار القبول والتشغيل.

مثال على دوائر IC هي دوائر الأجهزة الرقمية: المسجلات، والمجمعات، وأنصاف المضافات، والعدادات، وأجهزة التشفير، وأجهزة فك التشفير، وما إلى ذلك.

يتضمن الجزء البرمجي: مجموعة من البرامج والقواعد مع جميع الوثائق ذات الصلة، والتي تتيح لك استخدام الكمبيوتر لحل المشكلات المختلفة.

البرنامج عبارة عن تسلسل كامل لأوامر الآلة أو عبارات لغة البرمجة التي تحدد سلسلة من الإجراءات لحل مشكلة معينة.

المهمة في عملنا هي: تحويل العدد العشري المكون من ثلاثة أرقام إلى نظامي أعداد ثنائي وسداسي عشري. يتم تنفيذ هذه المهمة باستخدام لغة التجميع. تستخدم هذه اللغة منخفضة المستوى رموزًا رمزية (ذاكرية) لتعليمات الآلة وعناوينها. وميزة هذه اللغة هي: أولاً، أن البرامج المكتوبة بها تتطلب ذاكرة أقل بكثير؛ ثانيًا، إن معرفة هذه اللغة وشيفرة الآلة الناتجة تعطي فكرة عن بنية الآلة، وهو أمر من غير المرجح أن يتم توفيره عند العمل بلغة برمجة عالية المستوى.


معلومات عامة عن لغة التجميع

يمكن للغة التجميع الرمزية أن تقضي إلى حد كبير على عيوب برمجة لغة الآلة.

ميزتها الرئيسية هي أنه في لغة التجميع يتم عرض جميع عناصر البرنامج في شكل رمزي. يُعهد بتحويل أسماء الأوامر الرمزية إلى أكوادها الثنائية إلى برنامج خاص - مُجمِّع يحرر المبرمج من العمل كثيف العمالة ويزيل الأخطاء التي لا مفر منها.

الأسماء الرمزية التي يتم إدخالها عند البرمجة بلغة التجميع عادة ما تعكس دلالات البرنامج، ويعكس اختصار الأوامر وظيفتها الرئيسية. على سبيل المثال: PARAM - المعلمة، TABLE - الجدول، MASK - القناع، ADD - الإضافة، SUB - الطرح، إلخ. إلخ. يسهل على المبرمج أن يتذكر مثل هذه الأسماء.

للبرمجة بلغة التجميع، من الضروري أن يكون لديك أدوات معقدة أكثر من البرمجة بلغة الآلة: فأنت بحاجة إلى أنظمة كمبيوتر تعتمد على حاسوب صغير أو كمبيوتر شخصي مع مجموعة من الأجهزة الطرفية (لوحة المفاتيح الأبجدية الرقمية، وعرض الأحرف، ومحرك الأقراص العائم، وجهاز الطباعة)، بالإضافة إلى أنظمة البرمجة المقيمة أو المتقاطعة للأنواع المطلوبة من المعالجات الدقيقة. تتيح لك لغة التجميع كتابة وتصحيح برامج أكثر تعقيدًا بشكل فعال من لغة الآلة (حتى 1 - 4 كيلو بايت).

لغات التجميع موجهة نحو الآلة، أي تعتمد على لغة الآلة وبنية المعالج الدقيق المقابل، حيث يتم تعيين اسم رمزي محدد لكل تعليمات للمعالج الدقيق.

توفر لغات التجميع زيادة كبيرة في إنتاجية المبرمج مقارنة بلغات الآلة وفي الوقت نفسه تحتفظ بالقدرة على استخدام جميع موارد الأجهزة المتوفرة للبرامج الخاصة بالمعالج الدقيق. يتيح ذلك للمبرمجين المهرة كتابة برامج تعمل في وقت أقل وتشغل ذاكرة أقل من البرامج المكتوبة بلغة عالية المستوى.

وفي هذا الصدد، تتم كتابة جميع برامج التحكم في أجهزة الإدخال / الإخراج (برامج التشغيل) تقريبًا بلغة التجميع، على الرغم من وجود مجموعة كبيرة إلى حد ما من اللغات عالية المستوى.

باستخدام لغة التجميع، يمكن للمبرمج ضبط المعلمات التالية:

فن الإستذكار (الاسم الرمزي) لكل أمر في لغة آلة المعالج الدقيق؛

تنسيق قياسي لأسطر برنامج مكتوب بلغة التجميع؛

تنسيق لتحديد طرق العنونة المختلفة وخيارات الأوامر؛

تنسيق لتحديد ثوابت الأحرف وثوابت الأعداد الصحيحة في أنظمة الأعداد المختلفة؛

الأوامر الزائفة التي تتحكم في عملية تجميع (ترجمة) البرنامج.

في لغة التجميع، تتم كتابة البرنامج سطرًا سطرًا، أي يتم تخصيص سطر واحد لكل أمر.

بالنسبة لأجهزة الكمبيوتر الصغيرة المبنية على أساس الأنواع الأكثر شيوعًا من المعالجات الدقيقة، قد يكون هناك العديد من المتغيرات للغة التجميع، ولكن عادةً ما يتم استخدام واحدة على نطاق واسع في الممارسة العملية - وهذا ما يسمى بلغة التجميع القياسية. في ما يلي، سننظر في لغات التجميع القياسية.

يحتوي كل سطر من البرنامج المكتوب بلغة التجميع على أربعة حقول:

رمز التسمية، التعليق

يعد حقل LABEL اختياريًا؛ فهو يحدد عنوان خلية الذاكرة التي يوجد بها البايت الأول للأمر المحدد. يتم استخدام التسميات كعناوين انتقالية لأوامر نقل التحكم، وبفضل وجودها، لا يستطيع المبرمج العمل بالعناوين المطلقة، ولكن استخدام العناوين الرمزية، وهو أكثر ملاءمة. يمكن أن يتكون الملصق من حرف واحد إلى ستة أحرف، ويجب أن يكون أولها حرفًا. تسمح العديد من المجمعات بالتسميات بأي طول، ولكن يتم التعرف على الأحرف الستة الأولى فقط. يجب ألا يحتوي الملصق على مسافات أو علامات ترقيم. في بعض المجمعات، يجب أن يتبع الحرف الأخير من التسمية بنقطتين.

في حقل التسمية، يجب تعريف كل تسمية مرة واحدة فقط، ولكن يمكن استخدام المراجع إليها عدة مرات حسب الضرورة. وإلا، فسيقوم المجمّع بإصدار رسالة تشخيصية حول التسمية المحددة للضرب.

يحتوي حقل CODE على الاسم الرمزي للأمر أو الأمر الزائف المطلوب تنفيذه. إن تذكير معظم الأوامر هو اختصار للجمل باللغة الإنجليزية التي تميز وظيفتها الرئيسية.

على سبيل المثال:

MOV (MOVE) - نقل للأمام

إضافة (إضافة) - إضافة

الفرعية (الطرح) - الطرح

LDA (تحميل مباشر

المجمع) - التحميل المباشر

INR (زيادة البطارية

التسجيل) - تسجيل الزيادة

تسجيل) تسجيل إنقاص

إن أساليب تقوية الأوامر هي كلمات أساسية للمجمع، وإذا لم يتم تضمينها في مجموعة أساليب تقوية الأوامر الصالحة، فسيقوم المجمع بالإبلاغ عن أمر غير صالح.

عادةً ما يتم تعريف حقل OPERAND وفقًا لحقل رمز التعليمات. قد تحتوي على معامل واحد أو أكثر، مفصولة بفواصل، أو قد لا تحتوي على معاملات لتلك التعليمات التي تعمل على سجلات العمل الداخلية.

المعامل هو تعبير يحتوي على تدوين ذاكري وثوابت وعوامل تشغيل.

تحتوي أبسط المعاملات على رمز تذكيري واحد أو ثابت واحد.

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

يمكن تمثيل الثوابت في أنظمة أعداد مختلفة.

جزء البرمجيات

وصف البرامج

سنتناول في هذا العمل إحدى طرق تحويل رقم من نظام الأرقام العشري إلى نظام ثنائي وسداسي عشري باستخدام لغة التجميع. قبل إنشاء البرنامج، سننظر بالتفصيل في الخطوات التي يجب اتخاذها لهذا الغرض، أي بمعنى آخر، سنكتب خوارزمية لحل مشكلتنا. لكي يتمكن الكمبيوتر من معالجة البيانات، فإنه يحتاج إلى إدخال هذه البيانات، مما يعني أن الخطوة الأولى في حل مشكلتنا ستكون إدخال رقم. ستكون الخطوة الثانية في العمل هي عرض رسالة حول الرقم الذي تم إدخاله. بعد ذلك، نقوم بتحويل الرقم العشري إلى النظام الثنائي ونعرض رقمنا بالمعادل الثنائي على الشاشة. الخطوة التالية هي تحويل الرقم إلى المكافئ الست عشري والخطوة الأخيرة هي حلقة تسمح لك بمتابعة إدخال رقم عشري جديد. الآن دعونا نجمع كل النقاط معًا:

1. إدخال رقم من لوحة المفاتيح.

2. عرض رسالة بالرقم المدخل.

3. تحويل رقم إلى معادله الثنائي.

4. عرض رقم ثنائي.

5. تحويل رقم إلى رقم سداسي عشري.

6. عرض رقم سداسي عشري.

7. دورة (هل نستمر؟) إذا كانت الإجابة بنعم، فنقطة 1، وإلا فنقطة 8

8. اخرج من البرنامج.

هذه هي خوارزمية برنامج اللغة الطبيعية.

مراحل تطور برامج المجمع

1. بيان المشكلة. يتضمن وصفًا ذا معنى للمشكلة وتطوير الخوارزمية.

2. تطوير نص البرنامج.

3. إدخال النص في الكمبيوتر. يتم إدخال نص البرنامج برموز تذكيرية إلى الكمبيوتر باستخدام أي محرر نصوص. يؤدي هذا أيضًا إلى إنشاء ملف نصي بالملحق *.ASM.

4. التجميع أو التجميع. يتم تحويل ملف نصي بامتداد *.ASM إلى ملف كائن يحتوي على برنامج في تعليمات برمجية للجهاز بامتداد *.OBJ. وفي هذه المرحلة أيضًا يمكن إنشاء قائمة البرامج. ملف ذو الامتداد *.LST، والذي يحتوي على معلومات أساسية حول البرنامج، بالإضافة إلى ملف مرجعي ترافقي بامتداد *.CRF. في هذه المرحلة، يتم فحص نص البرنامج بحثًا عن الأخطاء. يتم تنفيذ التجميع باستخدام برنامج المترجم TASM.EXE (ASM.EXE - في المجمع، MASM.EXE - في مجمع الماكرو). TASM [خيارات] *.ASM [،] - أمر لتنفيذ الترجمة. إذا تم تحديد فاصلة واحدة في الأمر، فسيتم إنشاء ملف القائمة. لدى TASM خياران: /ZI و /N. يطلق عليهم: TASM.

5. التخطيط. في هذه المرحلة، يتم إنشاء برنامج قابل للنقل ويمكن تحميله في أي منطقة بالذاكرة. تم الحفظ في ملف بالملحق *.EXE أو *.COM. للقيام بذلك، استخدم TLINK.exe (لمجمع الماكرو LINK.EXE). الخيارات هي /T و /X.

6. التنفيذ والتصحيح (DEBUG).

7. إدخال رمز الجهاز الخاص بالبرنامج في ذاكرة القراءة فقط (قد يكون مفقودًا) الآن سنلقي نظرة على المخطط التفصيلي لبرنامجنا، أي الإجراءات المطلوبة.


; برنامج لتحويل العشري إلى; الأنظمة الثنائية والست عشرية; التراكمات

؛ شريحة البيانات

؛طاولة الحوار"رقم - ASCII-شفرة

tabl_ascii ديسيبل "0123456789abcdef"

;____________________________________________________________________

؛طاولة الحوار"ASCII-رقم الكود

ديسيبل 0،1،2،3،4،5،6،7،8،9

ديسيبل 0ah، 0bh، 0ch، 0dh، 0eh، 0fh

;____________________________________________________________________

؛ حجز وتهيئة المتغيرات في الذاكرة

x_ascii ديسيبل 20 ساعة دوب(؟)

t1 db 0dh,0ah،"أدخل رقمًا ثم اضغط على Enter"

ديسيبل 0dh، 0ah، "$"

t2 db 0dh,0ah,"لقد أدخلت رقمًا",0dh,0ah "$"

t3 db 0dh, 0ah، "في النظام الثنائي يبدو هكذا"

t4 db 0dh, 0ah، "بالنظام الست عشري مثل هذا"

ديسيبل 0dh، 0ah، "$"

buf ديسيبل 16 دوب(؟)،"$"

t5 db 0dh,0ah، "هل نواصل العملية؟ (نعم / لا)؟"

;____________________________________________________________________

; مقطع الكود

;الإجراء الرئيسي

د:ليا دي إكس، t1

؛إجراء إدخال رقم عشري

;إجراء لعرض رقم عشري

ص1:موف دي إل,

; تحويل رقم (عشري) إلى ثنائي

الإصدار 1:مول سي

;إجراء لعرض رقم ثنائي

; إجراء تحويل رقم (ثنائي) إلى رقم سداسي عشري

; وعرضها على الشاشة

ملحوظات :

وفيما يلي الأوامر المستخدمة في البرنامج:

الفرعية- الطرح الثنائي. طرح محتويات المعامل الثاني من المعامل الأول

فن الإستذكار:الفرعية< المعامل 1>,< المعامل 2>

يتصل- استدعاء الإجراء. ينقل التحكم إلى إجراء يتم تحديد عنوانه بواسطة المعامل بعد اكتمال الإجراء، ويستمر التنفيذ مع الأمر الذي يلي أمر الاستدعاء

فن الإستذكار: يتصل< اسم الإجراء>

متقاعد- العودة إلى الإجراء

shr- التحرك بشكل منطقي إلى اليمين

xor- حصري أو

فن الإستذكار:xor<операнд 1>,<операнд 2>

ليا- تحميل إي

فن الإستذكار:ليا ريج،<операнд>

يدفع- تضمين في المكدس

فن الإستذكار: يدفع< المعامل>

البوب- الاسترداد من المكدس

فن الإستذكار: البوب<операнд>

mov- إلى الأمام

فن الإستذكار:mov< المتلقي>,<источник>

شركة- زيادة بنسبة 1

فن الإستذكار:شركة<операнд>

ديسمبر- النقصان بنسبة 1

فن الإستذكار: ديسمبر< المعامل>

com.stosb- إعادة توجيه الاتصالات إلى سجل al أو ax المشار إليه بواسطة سجل di

حلقة- أمر لتنظيم حلقة مع عداد، وأيضًا انتقالات قصيرة (127 ب) يقلل الأمر من قيمة العداد cx، دون تغيير أي إشارات، إذا كان الاتصال cx > 0، فسيتم تنفيذ الانتقال إلى التسمية المحددة، وإلا تنتهي الحلقة.

فن الإستذكار: حلقة< ملصق>

.شفرة- يفتح مقطع التعليمات البرمجية

. بيانات- يفتح شريحة البيانات

.كومة ن- يحدد مكدس المقطع (أ)؛ لا يتم استخدام توجيهات إغلاق القطاع في هذه الحالة؛ N - يُظهر حجم المكدس (أ) بالبايت

ملحوظة : عند استخدام مثل هذه التوجيهات، تتم تهيئة سجل ds على النحو التالي: موف فأس،@data

موف س، الفأس

يفترض لا يستخدم في هذه الحالة

فهرس

1. "أنا لغة تجميع لأجهزة كمبيوتر IBM والبرمجة" المدرسة الثانوية 1992.

2. "كمبيوتر IBM الشخصي ونظام التشغيل MS-DOS" الراديو والاتصالات 1991.

3. إليوشكين ف.ن.، كوستين أ.إي.، خوخلوف م.م. "برمجيات النظام" م. "الثانوية العامة" 1987

4. Norton P., Souhe D. "لغة التجميع لأجهزة IBM PC"، M.، دار النشر "الكمبيوتر"، 1993

هذه المقالة مخصصة في الغالب للمبتدئين. إذا كنت على دراية جيدة بأنظمة الأرقام، فيمكنك فقط الانتباه إلى ميزات بناء الجملة الخاصة بمجمع FASM في نهاية المقالة.

في الحقيقة المعالج يعمل فقط مع الأرقام الثنائية المكونة من الآحاد والأصفار :) يتم تخزين كافة البيانات والأوامر الخاصة بأي برنامج ومعالجتها على شكل أرقام ثنائية. ومع ذلك، فإن التدوين الثنائي للأرقام مرهق للغاية وغير مريح للبشر، لذلك تستخدم برامج لغة التجميع أيضًا أنظمة أرقام أخرى: العشري، والسداسي العشري، والثماني.

القليل من النظرية

أولا وقبل كل شيء، دعونا معرفة ما هو الفرق بين أنظمة الأرقام. يمكن تمثيل أي رقم عشري على النحو التالي:

123 10 = 1 10 2 + 2 10 1 + 3 10 0

يشير الحرف أدناه إلى أنه رقم عشري. يتم ضرب رقم كل رقم في 10 إلى قوة تساوي رقم الرقم، إذا تم حسابه من الصفر من اليمين إلى اليسار. بشكل عام:

اي بي سي ص= أ ص 2 + ب ص 1 + ج ص 0 ,

حيث a وb وc هي بعض الأرقام، وr هو أساس نظام الأرقام. للنظام العشري ص= 10، للثنائي - ص= 2 للثلاثي ص= 3، الخ. على سبيل المثال، نفس العدد في الأنظمة الأخرى:

443 5 = 4 5 2 + 4 5 1 + 3 5 0 = 4 25 + 4 5 + 3 1 = 123 10 (النظام الخماسي)

173 8 = 1 8 2 + 7 8 1 + 3 8 0 = 1 64 + 7 8 + 3 1 = 123 10 (نظام ثماني)

1111011 2 = 1·2 6 + 1·2 5 + 1·2 4 + 1·2 3 + 0·2 2 + 1·2 1 + 1·2 0 = 1·64 + 1·32 + 1·16 + 1 8 + 0 4 + 1 2 + 1 1 = 123 10 (ثنائي)

نظام سداسي عشري

في النظام السداسي العشري، يتم استخدام الحروف A = 10، B = 11، C = 12، D = 13، E = 14، F = 15 للدلالة على أرقام أكبر من 9. على سبيل المثال:

ج7 16 = 12 16 1 + 7 16 0 = 12 16 + 7 1 = 199 10

تكمن ميزة النظام السداسي العشري في أنه من السهل جدًا تحويل الأرقام الثنائية إليه (وفي الاتجاه المعاكس أيضًا). يتم تمثيل أربعة أرقام من الرقم الثنائي (tetrad) برقم واحد من النظام الست عشري. للترجمة، ما عليك سوى تقسيم الرقم إلى مجموعات مكونة من 4 بتات واستبدال كل رباعية بالرقم السداسي العشري المقابل.

الثنائية
رباعيات
السداسي عشري
رقم
0000 0
0001 1
0010 2
0011 3
0100 4
0101 5
0110 6
0111 7
1000 8
1001 9
1010 أ
1011 ب
1100 ج
1101 د
1110 ه
1111 F

لكتابة بايت واحد، يلزم وجود رقمين سداسي عشري فقط:

0101 1011 2 = 5 ب 16

0110 0000 2 = 60 16

1111 1111 2 = ف ف 16

النظام الثماني

يعد النظام الثماني مفيدًا أيضًا في تمثيل الأرقام الثنائية، على الرغم من أنه أقل استخدامًا بكثير من النظام السداسي العشري. للترجمة بسرعة، تحتاج إلى تقسيم الرقم الثنائي إلى مجموعات مكونة من 3 أرقام (ثلاثية أو ثلاثية).

الثنائية
ثالوث
ثماني
رقم
000 0
001 1
010 2
011 3
100 4
101 5
110 6
111 7

على سبيل المثال: 001 110 101 2 = 165 8

بناء جملة المجمّع FASM

بشكل افتراضي، ينظر المجمّع إلى الرقم الموجود في البرنامج على أنه رقم عشري. للإشارة إلى رقم ثنائي، تحتاج إلى إضافة رمز إلى نهايته 'ب'. تتم الإشارة إلى الرقم الثماني بالمثل باستخدام الرمز "س". لكتابة رقم سداسي عشري، يدعم FASM ثلاثة نماذج للتدوين:

  • يتم كتابة الرموز قبل الرقم "0x"(كما في C/C++)؛
  • يتم كتابة الرمز قبل الرقم ’$’ (كما في باسكال)؛
  • يتم كتابة الرمز بعد الرقم "ح". إذا كان الرقم السداسي العشري يبدأ بحرف، فيجب عليك إضافة صفر بادئ (وإلا فلن يكون من الواضح ما إذا كان رقمًا أم اسم تسمية).

يتم استخدام بناء الجملة هذا في إعلانات البيانات والأوامر. وفيما يلي أمثلة لكتابة الأرقام في جميع الأنظمة الأربعة:

حركة الفأس، 537 ؛النظام العشريموفبل، 11010001ب ؛النظام الثنائيحركة الفصل، 57 س ؛ النظام الثماني mov dl , $ C2 ;\ mov si , 0x013A ; \mov آه، 18 ساعة ; / النظام الست عشري mov al , 0FFh ;/ mov al , FFh ;Error!

mov ax,537 ;النظام العشري mov bl,11010001b ;النظام الثنائي mov ch,57o ;النظام الثماني mov dl,$C2 ;\ mov si,0x013A ; \mov آه، 18 ساعة؛ / النظام السداسي العشري mov al,0FFh ;/ mov al,FFh ;Error!

نظام الأرقام السداسي العشري(المعروف أيضًا باسم الكود السداسي العشري) هو نظام أرقام موضعية بقاعدة عددية 16. المصطلح سداسي عشري (يُنطق سداسي عشري، وهو اختصار للغة الإنجليزية السداسية العشرية) يستخدم أيضًا في بعض الأحيان في الأدب. تُستخدم أرقام نظام الأرقام هذا عادةً في الأرقام العربية من 0 إلى 9، بالإضافة إلى الأحرف الأولى من الأبجدية اللاتينية A-F. تتوافق الحروف مع القيم العشرية التالية:

  • * أ-10؛
  • *ب — 11؛
  • *ج — 12؛
  • * د -13؛
  • * ه - 14؛
  • * ف - 15.

وبالتالي، فإن عشرة أرقام عربية، مقترنة بستة أحرف لاتينية، تشكل الأرقام الستة عشر للنظام.

بالمناسبة، يمكنك على موقعنا تحويل أي نص إلى رمز عشري أو سداسي عشري أو ثنائي باستخدام حاسبة الرموز عبر الإنترنت.

طلب. رمز سداسي عشرييستخدم على نطاق واسع في البرمجة منخفضة المستوى وكذلك في المستندات المرجعية للكمبيوتر المختلفة. يتم تبرير شعبية النظام من خلال الحلول المعمارية لأجهزة الكمبيوتر الحديثة: فهي تحتوي على بايت (يتكون من ثمانية بتات) كحد أدنى لوحدة المعلومات - ويتم كتابة قيمة البايت بسهولة باستخدام رقمين سداسي عشري. يمكن أن تتراوح قيمة البايت من #00 إلى #FF (من 0 إلى 255 بالتدوين العشري) - وبعبارة أخرى، باستخدام رمز سداسي عشري، يمكنك كتابة أي حالة للبايت، في حين لا توجد أرقام "إضافية" غير مستخدمة في التسجيل.

مشفرة يونيكوديتم استخدام أربعة أرقام سداسية عشرية لتسجيل رقم الحرف. غالبًا ما يستخدم تدوين ألوان RGB (الأحمر والأخضر والأزرق) رمزًا سداسيًا عشريًا (على سبيل المثال، #FF0000 هو تدوين لون أحمر ساطع).

طريقة لكتابة الكود الست عشري.

طريقة الكتابة الرياضية. في التدوين الرياضي، تتم كتابة قاعدة النظام في شكل عشري كحرف منخفض على يمين الرقم. يمكن كتابة التدوين العشري للرقم 3032 بالشكل 3032 10، وفي النظام السداسي العشري سيكون لهذا الرقم الترميز BD8 16.

في بناء جملة لغات البرمجة. يحدد بناء جملة لغات البرمجة المختلفة تنسيق كتابة الرقم باستخدامه بشكل مختلف رمز سداسي عشري:

* يستخدم بناء جملة بعض أصناف لغة التجميع الحرف اللاتيني "h" الذي يوضع على يمين الرقم، على سبيل المثال: 20Dh. إذا كان الرقم يبدأ بحرف لاتيني، فيوضع أمامه صفر، على سبيل المثال: 0A0Bh. يتم ذلك من أجل تمييز القيم باستخدام الثوابت عن الثوابت. رمز سداسي عشري;

* أنواع أخرى من المجمعات، بالإضافة إلى باسكال (ومتغيراتها مثل دلفي) وبعض اللهجات الأساسية، تستخدم البادئة "$": $A15؛

* في لغة ترميز HTML، وكذلك في ملفات CSS المتتالية، يتم استخدام البادئة "#" للإشارة إلى اللون بتنسيق RGB مع التدوين السداسي العشري: #00DC00.

كيفية تحويل الكود الست عشري إلى نظام آخر؟

التحويل من النظام الست عشري إلى النظام العشري.لإجراء عملية تحويل من النظام السداسي العشري إلى النظام العشري، تحتاج إلى تمثيل الرقم الأصلي كمجموع منتجات الأرقام في أرقام الرقم السداسي العشري وقوة القاعدة.

ثنائي SS

سداسي عشري SS

على سبيل المثال، تحتاج إلى ترجمة الرقم السداسي العشري A14: فهو يتكون من ثلاثة أرقام. وباستخدام القاعدة نكتبها كمجموع قوى بأساس 16:

أ14 16 = 10.16 2 + 1.16 1 + 4.16 0 = 10.256 + 1.16 + 4.1 = 2560 + 16 + 4 = 2580 10

تحويل الأرقام من النظام الثنائي إلى النظام الست عشري والعكس.

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

جدول الدفاتر للترجمة.

للتحويل من النظام السداسي العشري إلى النظام الثنائي، يلزمك إجراء العملية العكسية: استبدل كل رقم برباعي من الجدول.

ثنائي SS

أوكتال إس إس

مثال التحويل من الست عشري إلى الثنائي: A5E 16 = 1010 0101 1110 = 101001011110 2

مثال التحويل من ثنائي إلى سداسي عشري: 111100111 2 = 0001 1110 0111 = 1E7 16

في هذا المثال، لم يكن عدد الأرقام في الرقم الثنائي الأصلي أربعة (9)، لذلك تمت إضافة الأصفار البادئة ليصبح إجمالي عدد الأرقام 12.

الترجمة الآلية. يمكن إجراء تحويل سريع من نظام الأرقام السداسي العشري إلى أحد الأنظمة الثلاثة الشائعة (الثنائي والثماني والعشري)، بالإضافة إلى التحويل العكسي، باستخدام الآلة الحاسبة القياسية المضمنة في نظام التشغيل Windows. افتح الآلة الحاسبة، وحدد عرض -> مبرمج من القائمة. في هذا الوضع، يمكنك ضبط نظام الأرقام المستخدم حاليًا (انظر القائمة الموجودة على اليسار: Hex، Dec، Oct، Bin). في هذه الحالة، يؤدي تغيير نظام الأرقام الحالي إلى إنشاء ترجمة تلقائيًا.