Task #1
General structure of Assembly code and printing characters.
//Solution .MODEL small .STACK 100H .DATA .CODE MAIN PROC MOV AH, 2 MOV DL, 41h INT 21h ;For a New line we need to execute the following line MOV AH, 2 MOV DL, 0dh INT 21h MOV DL, 0Ah INT 21h ;New line ends MOV DL, 62h INT 21h MOV DL, 63h INT 21h MOV DL, 'P' INT 21h MOV AH, 4Ch INT 21h ENDP MAIN END MAIN
Task #2
Input and output of characters
//Solution .MODEL small .STACK 100H .DATA .CODE MAIN PROC MOV AH, 1 INT 21h ;The equivalent ascii is stored in AL MOV BL, AL ; Data is moved to BL ;Newline MOV AH, 2 MOV DL, 0Dh int 21h MOV DL, 0Ah int 21h MOV DL, BL ;Data moved to DL for output int 21h ;Exit MOV AH, 4Ch int 21h ENDP MAIN END MAIN
Task #3
Printing a string the hard way
//Solution .MODEL small .STACK 100H .DATA .CODE MAIN PROC MOV AH, 2 MOV DL, 'H' int 21h MOV DL, 'E' int 21h MOV DL, 'L' int 21h MOV DL, 'L' int 21h MOV DL, 'O' int 21h MOV DL, ' ' int 21h MOV DL, 'W' int 21h MOV DL, 'O' int 21h MOV DL, 'R' int 21h MOV DL, 'L' int 21h MOV DL, 'D' int 21h ;Exit MOV AH, 4Ch int 21h ENDP MAIN END MAIN
Task #4
Printing a string the easy way
//Solution .MODEL small .STACK 100H .DATA str db 'Hello World!',0Dh, 0Ah,'$' .CODE MAIN PROC MOV AX, @DATA MOV DS, AX MOV AH, 9 LEA DX, str int 21h MOV AH, 2 MOV DL, '.' int 21h ;Exit MOV AH, 4Ch int 21h ENDP MAIN END MAIN
Task #5
Uppercase to lower case
//Solution .MODEL small .STACK 100H .DATA msg DB 'Enter in uppercase: $' msg2 DB 'In lowercase: $' crlf DB 0Dh, 0Ah, '$' .CODE MAIN PROC MOV AX, @DATA MOV DS, AX MOV AH, 9 LEA DX, msg int 21h MOV AH, 1 int 21h MOV BL, AL MOV Ah, 9 LEA DX, crlf int 21h LEA DX, msg2 int 21h ADD BL, 20h MOV AH, 2 MOV DL, BL int 21h ;Exit MOV AH, 4Ch int 21h ENDP MAIN END MAIN
Task #6
Lowercase to uppercase
//Solution .MODEL small .STACK 100H .DATA msg DB 'Enter in lowercase: $' msg2 DB 'In uppercase: $' crlf DB 0Dh, 0Ah, '$' .CODE MAIN PROC MOV AX, @DATA MOV DS, AX MOV AH, 9 LEA DX, msg int 21h MOV AH, 1 int 21h MOV BL, AL MOV Ah, 9 LEA DX, crlf int 21h LEA DX, msg2 int 21h SUB BL, 20h MOV AH, 2 MOV DL, BL int 21h ;Exit MOV AH, 4Ch int 21h ENDP MAIN END MAIN
Task #7
Take 2 input numbers from 0-4 and print the sum of the numbers in new line
//Solution To be done by students