Question: Intel Assembly Language Programming Assignment using NASM software Complete the following Intel assembly language program which determines whether the byte sized operand stored in memory

Intel Assembly Language Programming Assignment using NASM software Complete the following Intel assembly language program which determines whether the byte sized operand stored in memory location 'number' is prime or not. The program will write the value of 0 into the memory location 'answer' if the number is not prime, otherwise the initial value of '1' will be left unmodified (indicating that the number is prime). The program makes use of the DIV instruction to determine the value of quotient and remainder when dividing the number by 2,3,4,... (number -1) .

section .data ; put your data in this section using ; db , dw, dd directions

number db 5 answer db 1 ; 1 means number is prime, 0 means number is not prime section .bss

; put UNINITIALIZED data here using

section .text global _start

_start: mov esi, number ; get the offset of number into esi keith: mov eax, 0 ; clear the entire eax register mov al, [esi] ; get the number from memory into al mov dl, al ; put it inside dl as well mov bl, 2 ; bl holds each divisor starting from 2 loopy: div bl ; ax / bl with quot in al and rem in ah and ax, 1111111100000000b ; isolate the rem in ah with a AND mask ; to determine whether the remainder is 0

; YOU COMPLETE THE REST OF THE CODE

HINT: The program is to implement the following high-level pseudocode:

prime = true ; divisor = 2 ; while ( divisor < number ) { if ( the remainder of number / divisor is 0 ) { prime = false ; // we found a divisor which evenly divides number } // so therefore number cannot be prime divisor = divisor + 1 ; // check the next divisor and keep looping }

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!