|
;TryNum.asm
;This is an assembly language program.
;It was written by Myron Berg Of Dickinson State University
;for Assembly Language programming. It demonstrates floating point and
;integer input and output.
;4/5/99
;It needs to be linked with the file Numbers.obj
;Also, it needs to have the following files in the current path (or change
; the paths below).
include macros2.asm
include number.asm
.model small
.stack 100h
.386
.387
.data
cr equ 10
lf equ 13
message1 db 'enter a real number', cr, lf
db '$'
message2 db ' divided by pi is '
db '$'
RealNum1 dd ?
RealNum2 dd ?
message3 db 'enter an integer number', cr, lf
db '$'
message4 db ' divided by 7 is '
db '$'
message5 db ' with a remainder of '
db '$'
firstInteger dd ?
secondInteger dd ?
thirdInteger dd ?
.code
begin: .startup
newline 2
displaystring Message1
getFloat RealNum1
finit
fld RealNum1
fldpi
fdivp
fstp RealNum2
displayFloat RealNum1, 2
displayString message2
displayFloat RealNum2, 5
newline 2
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
displayString message3
getInteger firstInteger
Mov eax, firstInteger
cdq
mov ebx, 7
idiv ebx
mov secondInteger, eax
mov thirdInteger, edx
newline
displayInteger FirstInteger
displayString message4
displayInteger secondInteger
displayString message5
displayInteger thirdInteger
newline 2
displayString message1
newline
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
getFloat RealNum1
finit
fld RealNum1
fldpi
fdivp
fstp RealNum2
displayFloat RealNum1, 2
displayString message2
displayFloat RealNum2, 2
newline 2
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
displayString message3
getInteger firstInteger
Mov eax, firstInteger
cdq
mov ebx, 7
idiv ebx
mov secondInteger, eax
mov thirdInteger, edx
newline
displayInteger FirstInteger
displayString message4
displayInteger secondInteger
displayString message5
displayInteger thirdInteger
newline 2
.exit
end begin
|
|