Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Fließkommazahlen mit der FPU berechnen

Frage Entwicklung Assembler

Mitglied: supernicky

supernicky (Level 1) - Jetzt verbinden

22.06.2011 um 03:45 Uhr, 3703 Aufrufe, 3 Kommentare

Ergebnis einer Fließkommaberechnung liegt nur als Integer vor...

Hallo,

auch wenn ich nicht viel Hoffnung habe das hier jemand antwortet, hier mal meine Frage.

Ich lege 2 Zahlen auf den FPU Stack ab (2.5 und 4.0)
Nach einer Multiplikation erhalte ich auch als Ergebnis 10.

Sobald ich aus der 4.0 eine 4.5 mache, erhalte ich genau 11... (11.25 ist das genaue Ergebnis)

Nun habe ich in meinem Buch stehen daß das Komma im Exponenten abgelegt wird und der eigentliche Zahlenwert in der Mantisse steht.

Sollte die Mantisse dann nicht den Wert 1125 und der Exponent (16bit groß) den Wert 2 haben?

Weiß jemand wie man das 80bit Ergebnis ausliest das ich wie oben auf meine 11.25 komme?

Nicky


hier noch der Code für FPU:
zahl1 ist 4.5 und zahl2 ist 2.5. Das Ergebnis der Multiplikation wird am Ende wieder nach zahl1 geschrieben, die ich dann ausgeben möchte.


fld zahl1
fld zahl2
fmul
fist zahl1
wait
Mitglied: 76109
22.06.2011 um 10:31 Uhr
Hallo supernicky!

Mit
FIST
bekommst Du nur Ganzzahlen und keine Fließkommazahlen geliefert.

Mit
FBSTP Buf
bekommst Du den Fließkomma-Wert im BCD-Format geliefert. Zum umwandeln ist der Befehl 'AAM' von nutzen.

Gruß Dieter

PS. Der Buffer muss die Größe QWord (64-Bit) oder TByte (80-Bit) haben.
Bitte warten ..
Mitglied: supernicky
22.06.2011 um 16:10 Uhr
Hallo Dieter,

Der Befehl AAM funktioniert nur mit 16bit Registern.

Muss ich die Variable Buf wortweise in das AX Register kopieren und dann mit AAM umwandeln?

Gruß Nicky
Bitte warten ..
Mitglied: 76109
23.06.2011 um 00:46 Uhr
Hallo Nicky!

Nö, Byteweise in AL.
01.
mov AL, byte ptr Buf[x] 
02.
aam 
AAM splittet die Einer nach AL und die Zehner nach AH

Gruß Dieter
Bitte warten ..
Ähnliche Inhalte
Datenbanken
Access 2010 Entwicklung berechnen (1)

Frage von Dr.Cornwallis zum Thema Datenbanken ...

Batch & Shell
gelöst Zeiten in .txt datei auslesen und Differenz berechnen (14)

Frage von meex87 zum Thema Batch & Shell ...

Datenbanken
Zeitdifferenz berechnen MSSQL (3)

Frage von EricAG3 zum Thema Datenbanken ...

Netzwerke
HTTP Overhead Berechnen und Protokolstack

Frage von karlosss zum Thema Netzwerke ...

Neue Wissensbeiträge
Multimedia

Raspberry Pi als Digital-Signage-Computer

(1)

Information von BassFishFox zum Thema Multimedia ...

Windows Update

Novemberpatches und Nadeldrucker bereiten Kopfschmerzen

(16)

Tipp von MettGurke zum Thema Windows Update ...

Windows 10

Abhilfe für Abstürze von CDPUsersvc auf Win10 1607 und 2016 1607

(7)

Tipp von DerWoWusste zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Router & Routing
Freigabe aus anderem Netz nicht erreichbar (32)

Frage von McLion zum Thema Router & Routing ...

Visual Studio
Vb.net-Tool zum Erzeugen einer Outlook-E-Mail (24)

Frage von ahstax zum Thema Visual Studio ...

Batch & Shell
Batch Programm verhalten bei shoutdown -p (19)

Frage von Michael-ITler zum Thema Batch & Shell ...

Windows Netzwerk
Netzwerk Neustrukturierung (15)

Frage von IT-Dreamer zum Thema Windows Netzwerk ...