%macro scall 4
    mov rax,%1
    mov rdi,%2
    mov rsi,%3
    mov rdx,%4
    syscall
%endmacro

section .data
    m1 db 10d,"ENTER NAME: "
    l1 equ $-m1

    m2 db 10d,"LENGTH IS: "
    l2 equ $-m2
    
    m3 db 10d,"Entered name is: "
    l3 equ $-m3
    
    m4 db 10d,"ENTER ROLL NO: "
    l4 equ $-m4
    
    m5 db 10d,"Entered roll number is: "
    l5 equ $-m5
    
    m6 db 10d,"ENTER PANEL NO: "
    l6 equ $-m6
    
    m7 db 10d,"Entered panel number is: "
    l7 equ $-m7
    
section .bss
    string resb 6     ; 50 is the maximum buffer
    roll resb 3
    panel resb 2
    len resb 16
    len2 resb 16
    len3 resb 16
    answer resb 16

section .text
    global _start

_start:
    
    enter_data:
       	 scall 1,1,m1,l1
       	 scall 0,0,string,6       ; user string is stored in string
       	 dec rax
       	 mov [len],rax   ; this will give exact number of bytes
       	 scall 1,1,m4,l4
       	 scall 0,0,roll,3
       	 dec rax
         mov [len2],rax
         scall 1,1,m6,l6
       	 scall 0,0,panel,2
       	 mov [len3],rax
       	 scall 1,1,m3,l3
       	 scall 1,1, string,6
   	 
   	 display_length:
       	 scall 1,1,m2,l2
       	 mov rax,[len]
       	 call display       ; calls procedure
   	 ;mov rax,0
   	 
   	 enter_roll:
   	    scall 1,1,m5,l5
   	    scall 1,1,roll,3
   	    
   	display_length2:
       	 scall 1,1,m2,l2
       	 mov rax,[len2]
       	 call display 
   	    
   	enter_panel:
   	    scall 1,1,m7,l7
   	    scall 1,1,panel,2
    display_length3:
        scall 1,1,m2,l2
   	    mov rax,[len3]
   	    call display
    scall 60,0,0,0
    
display:
    mov rsi,answer+15       ; rsi points to the end of string
    mov rcx,16
    
loop1:          ; hex to ascii converter
    mov rdx,0
    mov rbx,16
    div rbx     ; divides rbx by rax and store it in dl
    cmp dl,09h
    jbe skip1
    add dl,07h
skip1:
    add dl,30H
    mov [rsi],dl
    dec rsi
    dec rcx
    jnz loop1
    scall 1,1,answer,16
ret

Embed on website

To embed this project on your website, copy the following code and paste it into your website's HTML: