tweener yazdi | arkadaşlar lab.da neler işlendi acaba? çözülen örnek soruları ve lab dersinde yapılanları paylaşabilecek bi arkadaşımız varsa çok sevinirim. bi de quizde ne gibi sorular çıkacak herhangi bi fikri veya duyumu olan var mı? şimdiden çok teşekkürler |
1 byte taki sıfır ve birlerin sayısını bulan assembler
data segment
DATA1 DB 97h
MESSAGE1 DB 'sifirlarin sayisi=','$'
MESSAGE2 DB 0Dh,0Ah,'birlerin sayisi=','$'
ends
stack segment
dw 128 dup(0)
ends
code segment
start:
; set segment registers:
mov ax, data
mov ds, ax
mov ah,09
mov dx,offset MESSAGE1
int 21h
mov cx,08
mov al,DATA1
sub bl,bl
sub dl,dl
again:
shl al,1
jnc next
inc bl
jmp over
next:
inc dl
jmp over
over:
dec cx
jnz again
or dl,30h
mov ah,02
int 21h
mov ah,09
mov dx,offset MESSAGE2
int 21h
mov dl,bl
or dl,30h
mov ah,02
int 21h
mov ax, 4c00h ; exit to operating system.
int 21h
ends
end start ; set entry point and stop the assembler.
'Mr. Gones' bu stringi 'Mr. Jones' ve 'Mr. JoNes' a cevir
display macro STRING
mov ah,09
mov dx,offset STRING
int 21h
endm
data segment
DATA1 DB 'Mr. Gones','$'
new_line DB 0Dh,0Ah,'$'
ends
stack segment
dw 128 dup(0)
ends
code segment
start:
; set segment registers:
mov ax, data
mov ds, ax
mov es, ax
display DATA1
display new_line
cld
mov cx,09
mov DI,offset DATA1
mov al,'G'
repne scasb
jne next
dec DI
mov byte ptr[DI],'J'
next:
display DATA1
display new_line
inc DI
inc DI
mov byte ptr[DI],'N'
display DATA1
display new_line
mov ax, 4c00h ; exit to operating system.
int 21h
ends
end start ; set entry point and stop the assembler.
|