Q: Write an ALP to find the largest number in a given set of numbers.
Assembler: Nasm
OS : Ubuntu 14.04 LTS(64 bit Linux)
Assembler: Nasm
OS : Ubuntu 14.04 LTS(64 bit Linux)
Code
SECTION .data msg1: db ' ',10 len1: equ $-msg1 msg: db "The Largest number is:",10 len: equ $-msg c : db 5h array : db 0x11,0x42,0xFE,0xAB,ox77 SECTION .bss count : resb 3 array resd 8 %macro write 2 mov eax,4 mov ebx,1 mov ecx,%1 mov edx,%2 int 80h %endmacro global _start SECTION .txt _start: mov esi,array u: mov al,[esi] INC esi cmp al,byte[esi] jbe l2 xchg bl,al l2: DEC byte [c] jnz u call convert write msg,len write result,2 mov eax,1 mov ebx,0 int 80h convert: mov esi,result mov byte[count],02 up: rol bl,04 mov bl,al AND bl,0Fh CMP bl,09 jbe l1 ADD bl,07h l1: ADD bl,30h mov [esi],bl INC esi DEC byte[count] jnz up RET
No comments:
Post a Comment