Mask Lower Nibble in Assembly Language Code
Write a program to mask lower nibble for that number should be loaded into the register and operation should be implemented on that loaded number . Calculated result should be displayed in the output .
Algorithm for Masking Lower Nibble
Step I : Load the number in AL.
Step II : Mask tower nibble i.e. AND AL, 0F0 H.
Step III : Display result.
Step IV : Stop.
Mask Lower Nibble Algorithm Snapshot
Masking Lower Nibble Code
1 |
.model small <br/> .data <br/> a dw 0012H <br/> .code <br/> mov ax, @data ; Initialize data section <br/> mov ds, ax <br/> mov ax, a ; Load number1 in ax <br/> and al, 0f0h ; mask lower nibble.Result in al <br/> mov ch, 02h ; Count of digits to be displayed <br/> mov cl, 04h ; Count to roll by 4 bits <br/> mov bh, al ; Result in reg bh <br/> l2: rol bh, cl ; roll bl so that msb comes to lsb <br/> mov dl, bh ; load dl with data to be displayed <br/> and dl, 0fH ; get only lsb <br/> cmp dl, 09 ; check if digit is 0-9 or letter A-F <br/> jbe l4 <br/> add dl, 07 ; if letter add 37H else only add 30H <br/> l4: add dl, 30H <br/> mov ah, 02 ; Function 2 under INT 21H (Display character) <br/> int 21H <br/> dec ch ; Decrement Count <br/> jnz l2 <br/> mov ah, 4ch <br/> int 21h <br/> end |
How to Run this Program
For Running this program you should have installed Tasm on you computer . If you have not installed Tasm yet please install from Here .
C:\programs>tasm lownib.asm
Turbo Assembler Version 3.0 Copyright (c) 1988, 1991 Borland International
Assembling file: lownib.asm
Error messages: None
Warning messages: None
Passes: 1
Remaining memory: 438k
C:\programs>tlink lownib.obj
Turbo Link Version 3.0 Copyright (c) 1987, 1990 Borland International
Warning: No stack
C:\programs>lownib
10
Source projectgeek.com