I NEED HELP WITH MY HLA 80x86 CODE, IT NEED TO GIVE ME THE NEXT OUTPUT: Provide a value: 3 Provide a value: 8 Provide a value: 12 sumIsOdd returned true! Provide a value: 8 Provide a value: 3 Provide a value: 3 sumIsOdd returned false! THIS IS THE OUTPUT IM GETTING: Provide Value1: 3 Provide Value2: 22 Provide Value3: 111 HERE IS MY CODE: program sumIsOdd; #include("stdlib.hhf") static value1 : int8; value2 : int8; value3 : int8; procedure sumIsOdd1; @nodisplay; @noframe; begin sumIsOdd1; mov( value1, al ); add( value2, al ); add( value3, al ); and( 1, al ); // checks if sum is odd by ANDing with 1 pushf; // save flags mov( al, dl ); // Use dl instead of dx as dl is 8 bits end sumIsOdd1; begin sumIsOdd; stdout.put( "Provide a value: " ); stdin.get( value1 ); stdout.put( "Provide a value: " ); stdin.get( value2 ); stdout.put( "Provide a value: " ); stdin.get( value3 ); call sumIsOdd1; popf; // restore flags cmp( dl, 1 ); // Use dl instead of dx as dl is 8 bits je IsOdd; stdout.put( "sumIsOdd returned false!\n" ); jmp endprogram; IsOdd: stdout.put( "sumIsOdd returned true!\n" ); endprogram: end sumIsOdd;
I NEED HELP WITH MY HLA 80x86 CODE, IT NEED TO GIVE ME THE NEXT OUTPUT:
Provide a value: 3
Provide a value: 8
Provide a value: 12
sumIsOdd returned true!
Provide a value: 8
Provide a value: 3
Provide a value: 3
sumIsOdd returned false!
THIS IS THE OUTPUT IM GETTING:
Provide Value1: 3
Provide Value2: 22
Provide Value3: 111
HERE IS MY CODE:
program sumIsOdd;
#include("stdlib.hhf")
static
value1 : int8;
value2 : int8;
value3 : int8;
procedure sumIsOdd1; @nodisplay; @noframe;
begin sumIsOdd1;
mov( value1, al );
add( value2, al );
add( value3, al );
and( 1, al ); // checks if sum is odd by ANDing with 1
pushf; // save flags
mov( al, dl ); // Use dl instead of dx as dl is 8 bits
end sumIsOdd1;
begin sumIsOdd;
stdout.put( "Provide a value: " );
stdin.get( value1 );
stdout.put( "Provide a value: " );
stdin.get( value2 );
stdout.put( "Provide a value: " );
stdin.get( value3 );
call sumIsOdd1;
popf; // restore flags
cmp( dl, 1 ); // Use dl instead of dx as dl is 8 bits
je IsOdd;
stdout.put( "sumIsOdd returned false!\n" );
jmp endprogram;
IsOdd:
stdout.put( "sumIsOdd returned true!\n" );
endprogram:
end sumIsOdd;
Step by step
Solved in 4 steps with 4 images