إجابات

أمثلة برامج أسمبلي

أمثلة برامج أسمبلي

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

أمثلة برامج أسمبلي:

1. برنامج الطباعة البسيط:


section .data
    hello db 'Hello, World!', 0
section .text
global _start

_start:
; Write the message to stdout
mov eax, 4
mov ebx, 1
mov ecx, hello
mov edx, 13
int 0x80

arduino
Copy code
; Exit the program
mov eax, 1
xor ebx, ebx
int 0x80

يقوم هذا البرنامج بطباعة النص “Hello, World!” على الشاشة.

2. برنامج الجمع:


section .data
    num1 db 5
    num2 db 7
    result db 0
section .text
global _start

_start:
; Load the values of num1 and num2 into registers
mov al, [num1]
mov bl, [num2]

sql
Copy code
; Add the values and store the result in the result variable
add al, bl
mov [result], al

; Exit the program
mov eax, 1
xor ebx, ebx
int 0x80

يقوم هذا البرنامج بجمع الأعداد 5 و 7 وتخزين النتيجة في متغير النتيجة.

3. برنامج حساب مجموع الأعداد:


section .data
    numbers db 1, 2, 3, 4, 5
    count equ $ - numbers
    sum db 0
section .text
global _start

_start:
; Initialize the sum to 0
mov al, 0
mov [sum], al

python
Copy code
; Calculate the sum of the numbers
mov bl, [numbers]
mov ecx, count

loop_start:
    add al, bl
    inc bl
    loop loop_start

; Store the sum in the sum variable
mov [sum], al

; Exit the program
mov eax, 1
xor ebx, ebx
int 0x80

يقوم هذا البرنامج بحساب مجموع الأعداد 1, 2, 3, 4, 5 وتخزين النتيجة في متغير الجمع.

4. برنامج طباعة التسلسل العددي:


section .data
    counter db 1
section .text
global _start

_start:
; Print the numbers from 1 to 10
mov al, [counter]

vbnet
Copy code
loop_start:
    ; Write the number to stdout
    mov eax, 4
    mov ebx, 1
    mov ecx, counter
    mov edx, 1
    int 0x80

    ; Increment the counter
    inc byte [counter]

    ; Check if the counter reaches 11
    cmp byte [counter], 11
    jnz loop_start

; Exit the program
mov eax, 1
xor ebx, ebx
int 0x80

يقوم هذا البرنامج بطباعة التسلسل العددي من 1 إلى 10 على الشاشة.

5. برنامج التحقق من توافق الأعداد:


section .data
    number1 dd 10.5
    number2 dd 7.2
    result db 0
section .text
global _start

_start:
; Load the values of number1 and number2 into registers
fld dword [number1]
fld dword [number2]

sql
Copy code
; Compare the values and store the result in the result variable
fcomip st1, st0
fstp st0
mov al, 0
jbe numbers_equal
mov al, 1
numbers_equal:
mov [result], al

arduino
Copy code
; Exit the program
mov eax, 1
xor ebx, ebx
int 0x80

يقوم هذا البرنامج بالتحقق من توافق الأعداد 10.5 و 7.2 ويخزن النتيجة في متغير النتيجة.

مقالات ذات صلة

زر الذهاب إلى الأعلى
إغلاق

أنت تستخدم إضافة Adblock

يرجى تعطيل مانع الإعلانات حيث أن موقعنا غير مزعج ولا بأس من عرض الأعلانات لك فهي تعتبر كمصدر دخل لنا و دعم مقدم منك لنا لنستمر في تقديم المحتوى المناسب و المفيد لك فلا تبخل بدعمنا عزيزي الزائر