MUHAMMAD AL-XORAZMIY NOMIDAGI TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI
CAO016-1 guruhi
Mustaqil ish
KOMPYUTERNI TASHKILLASHTIRISH
Bajaradi: Uzoqov Elbek
Tekshirdi: Xaitov Nasim
Toshkent 2023
Quyidagi mantiqiy ifodalarga mos mantiqiy diagramma chizing va
mantiqiy ifoda qiymatini toping:
F = A̅& ( B ⇒ C)агар A=1, B=1, C=0
A = 1, B = 1, va C = 0 berilganligida, A̅ operatori A ning qarshi qiymatini (inversiyasini) hisoblashda 0 ni qaytaradi. B = 1 va C = 0 bo'lgan holda, B ⇒ C ifodasi ham yolg'onlik qiymatini qaytaradi. Shuningdek, kon'yunktivlik (and) operatori o'ng va chap tomonlarida berilgan ifodalarni tekshiradi, va birinchi tomon A̅ = 0 qiymatiga ega bo'lganligi sababli, butun ifoda 0 ni qaytaradi.
Shuningdek, F = 0.
Quidagi keltirilgan ifodalar uchun assembler tilida dastur tuzing:
; assembly code to evaluate (a+b)-5(c+b)
section .data
a dd 10 ; a ning qiymati 10
b dd 20 ; b ning qiymati 20
c dd 5 ; c ning qiymati 5
section .text
global main ; programning boshlang'ich funksiyasi
main:
; (a+b) ni hisoblash
mov eax, [a] ; a ning qiymatini o'qib olamiz va eax ga yuklaymiz
add eax, [b] ; b ning qiymatini eax ga qo'shamiz
; (c+b) ni hisoblash
mov ebx, [c] ; c ning qiymatini o'qib olamiz va ebx ga yuklaymiz
add ebx, [b] ; b ning qiymatini ebx ga qo'shamiz
; (a+b) - 5(c+b) ni hisoblash
mov ecx, 5 ; ecx ni 5 ga tenglaymiz
imul ecx, ebx ; 5 ni (c+b) ga ko'paytiramiz
sub eax, ecx ; (a+b) dan 5(c+b) ni ayiramiz va natijani eax ga saqlaymiz
; natijani ekranga chiqaramiz
mov ebx, eax ; eax ni ebx ga nusxalab olamiz
call print_int ; ebx ni ekranga chop etamiz
call print_nl ; yangi qatorga o'tkazamiz
; dasturni tugatish
mov eax, 1 ; sistemadan chiqish (exit) tushunchasini yuklaymiz
xor ebx, ebx ; qaytish kodi sifrlangan bo'lishi kerak
int 0x80 ; INT 0x80 tushunchasini chaqiramiz (sistemani chaqirish)
Assembling va nusxalash uchun, quyidagi kompaniya ishlatilishi mumkin:
nasm -f elf32 program.asm -o program.o
ld -m elf_i386 program.o -o program
./program
Do'stlaringiz bilan baham: |