Ana Menü
· Ana Sayfa
· Dosyalar
· Dökümanlar
· Forum
· Günün Resmi
· Haber Arşivi
· WWW Linkleri
· Üye Listesi

     Forumlar

 strncpy ve strncpy_s
 Konu adi : Borland c++ Builder ile Amiral Batti
 Rady10 - YerliOyun
 Kabusta Kaybolmak
 Konsol da programı bekletmek
 Oyun programlama icin hangi programlama dilli ?
 flash! şanlıurfa bilgisayar oyununda(no rapid)
 Sevgilim Olur musun?
 Directx'e başlamak isteyenler bi bakın
 PSP programlama
 Flash tan php
 Bilgisyr oyunu yapmam için üniverstde hangi bölüme girmeliym
 www.arshiv.gen.ms
 Cimg.h ilgilenenler icin
 müttefik oyunu

Konu Disi
 Emraah
 Yeni sitemiz açıldı
 Kalp krizi durumunda ne yapılmalı?
 Oyun sektöründe hangi görevde çalışmak isterdiniz?
 Takım arkadaşı sorunu
 msn de renklı nıck
 pc hata veriyor ! YARDIM!!
 Gülmek isteyenler Buraya
 İnanılmaz hl 2 modu görüntüsü
 Computer Languages History

[ Forumlara Git ]


oyunyapimi.org: Forums

www.oyunyapimi.org :: Başlığı Görüntüle - atof()
 SSSSSS   AramaArama   Kullanıcı GruplarıKullanıcı Grupları   ProfilProfil   LoginLogin 

atof()
Sayfa Önceki  1, 2
 
Yeni Başlık Gönder   Cevap Gönder    www.oyunyapimi.org Forum Ana Sayfası -> Programlama Dilleri ve Algoritmalar
Önceki başlık :: Sonraki başlık  
Yazar Mesaj
lucifer



Kayıt: Nov 02, 2002
Mesajlar: 215
Nereden: Istanbool

MesajTarih: Mon Jul 18, 2005 3:42 pm    Mesaj konusu: Alıntıyla Cevap Ver

Babaconda,

-Su akilli asm koduna bir ornek verebilir misin?

-Sonucu normal matematikle bile izah edilemeyen bazı kavramlar nelerdir? Telepati, ruh cagirma gibi seyler mi bunlar
Başa dön
Kullanıcı profilini gör Kullanıcının web sitesini ziyaret et
KePhReNZ



Kayıt: Jan 02, 2003
Mesajlar: 55
Nereden: İzmir

MesajTarih: Mon Jul 18, 2005 4:24 pm    Mesaj konusu: Alıntıyla Cevap Ver

Merhaba,

Matrixte Neo bile küsürat hatasıydı. Bilgisayarlar küsüratlı işlemleri yapmada 0,1 kümsesini (sonlu bir kümeyi) kullandıkları sürece bu tür hatalar gerçekleşecektir. En gelişmişinde bile bu iş böyle. Yanlız presicion denen hassasiyet değeri arttıkça bu sapmalar daha küçük miktarlarda gerçekleşecektir. Zaten bilgisayar deiğimiz alet sonsuz bir dünyayı elindeki sonlu 0,1 kümesiyle ifade etmeye çalışır. Bu şuna benzer elinde bir bit var , bir renk var gri , gri 1 midir 0 mıdır, bunu söylemek için daha çok bit gerekmektedir. İşde böyle sayın seyirciler float 32 bit double 64, işde hassasiyet işde yenilik ...

Saygılarımla,
Ahmet Bilgili
Başa dön
Kullanıcı profilini gör E-Posta'yı gönder
BabaCONDA



Kayıt: Jun 12, 2005
Mesajlar: 58
Nereden: İstanbul

MesajTarih: Mon Jul 18, 2005 4:27 pm    Mesaj konusu: Alıntıyla Cevap Ver

lucifer aşağıdaki linkleri incele:

http://www.belgeler.org/glibc/glibc-FP-Exceptions.html
http://www.belgeler.org/glibc/glibc-Status-bit-operations.html
http://www.belgeler.org/glibc/glibc-Normalization-Functions.html

Intel Compiler for Windows
http://www.intel.com/cd/software/products/asmo-na/eng/compilers/219903.htm

Features and Benefits kısmının 6. maddesi

K.G....
Başa dön
Kullanıcı profilini gör E-Posta'yı gönder Kullanıcının web sitesini ziyaret et
asyncore



Kayıt: Jan 13, 2004
Mesajlar: 110
Nereden: Gevrek, darı ve çiğdem yenen yerden

MesajTarih: Mon Jul 18, 2005 10:21 pm    Mesaj konusu: Alıntıyla Cevap Ver

BabaCONDA demiş ki:
lucifer aşağıdaki linkleri incele:


Dostum boşuna kürek çekiyorsun, o mesajı atan bir bot. Yani sadece foruma renk katmak için siteye eklenmiş bir çeşni. Şahsen onun attığı mesajdan sonra o başlık altında başka cevap yazdığını görmedim. Muhtemelen senin verdiğin linklere girmeyecek ve cevap da vermeyecek. Boşuna ona birşey kanıtlamaya çalışma.

Bana gelince, ben ikna olmadım. Neden dersen o maddede hassasiyetle ilgili bir özellik belirtilmemiş, sadece "Allows manipulation of the stack for efficient execution". Sadece buna dayanarak tezini doğrulamaya çalışırsan desteksiz bir iddia ortaya atmış olursun. Sitemizin botunun ürettiği mesajdaki gibi ASM kodu görürsek daha iyi olur.

Diğer belgelerde de senin iddianı destekleyecek bilgiler yok.
Başa dön
Kullanıcı profilini gör E-Posta'yı gönder
devreci



Kayıt: Mar 04, 2005
Mesajlar: 256

MesajTarih: Mon Jul 18, 2005 11:39 pm    Mesaj konusu: Alıntıyla Cevap Ver

asmde bişeyler yapıyım dedimde daha ilk aşağıdakini yazdığım an 20.20001 sonucu verdi yani sorun atof de değil.

#include <stdio.h>

main(void)
{
float a=20.200000f;

printf("%f",a);

return 0;
}


daha önce söylemiştim float sayıları özel bir sistemle sıkıştırılıyor.
logaritmik düzende bu sıkırtırmada yapılırken sonuçta 0 1 diye bitler kullanılıyor yani sonuç bizim değerden ilgisiz sıkıştırlımış bir tamsayı olarak hafızada saklanıyor. bu sıkıştırma sisteminin yapılabilmesi için FPU sayıyı an az yapabildiği biçimde esnetiyor yoksa 4byte ye sığmaz demi.
Başa dön
Kullanıcı profilini gör E-Posta'yı gönder Kullanıcının web sitesini ziyaret et
LorenSoth



Kayıt: Oct 12, 2004
Mesajlar: 99

MesajTarih: Tue Jul 19, 2005 1:02 am    Mesaj konusu: Alıntıyla Cevap Ver

Ahanda gaza geldim bilgisayarin nasıl 32 bite e o kadar sayı yazdıgını yazayım dedim formatı hani :=)... ilk biti sign bit sonraki 8 bit i exp sonraki 23 bit ise mantissa zaten. Toplam 32 bit işte, mesela 252.390625 sayisi (örnegi google dan buldum hesaplamiim iki saat ) bunu binary(1 ve 0 lara) e ceviricen, işte virgülün solundakini 2 e bolerek kalanları soldan saga dizicen, virüglün sag tarafındakileri ise 2 ile carpa carpa gidicen 1 olana kadar gene kalanları soldan saga dizicen bildigimiz float tan binary e cevirme oluyor yani ve sonuc 11111100.011001 cikiyor, şimdi bunu 32 bite koymak icinde bunu scientific yazıoz önce -> 1,1111100011001 * 2 ^(üzeri) 7 dioz. (umarim virgüllerde karıstırmadım ) sonra bu üzeri olan 7 sayısına 127 ilave edioz oluyo 134 bunuda binary e cevirip exp kısmına yazıoruz 10000110, ahanda 9 biti halletmiş olduk sign ve exp bitleri bitti, geriye 23 bitlik mantissa kaldı, geriye kalan 23 bit icin ise virgülün sagındaki bitleride oraya atıoruz bos kalanlarda 0 oloyor.
Sonucta 252.390625 float sayısı 32 bit olarak şöyle konuluyor (ayrık ayrık yazıom) :
Kod:

// sign bit     Exponent                         Mantissa       
0                10000110                11111000110010000000000

Toplam 32 bit işte


Amanın yardırdım abi Smile dayanamadım paylaşasım geldi az bucuk bilgimi.
İkinciside işte bence bu durumda aksaklıktı zarttı zurttu round off error du olabiliyor yani sınırsız bi şeyi sınırlı bir yere ne kadar sıkıstırırsın ahanda bu kadar Smile, eger cok onemliyse hassasiyet compiler in floating point precision i arttırabiliriz sanırsam. Kolay gelsin herkese ! Very Happy
Başa dön
Kullanıcı profilini gör E-Posta'yı gönder
leblebi



Kayıt: Jan 05, 2004
Mesajlar: 127
Nereden: q3dm17

MesajTarih: Tue Jul 19, 2005 3:14 am    Mesaj konusu: ... Alıntıyla Cevap Ver

<float.h> dosyasina bakiniz;

FLT_EPSILON 1.192092896e-07F

Yani 10E-7 den sonraki rakamlar float type'i icin anlamsiz. Sen istedigin kadar anlam vermeye calis. Eger fen bilimleri dersini hatirliyosaniz burada anlamli rakamlardan bahsediyoruz.

Bu ne demek oluyo?

[code]
x = 2.000000000; // diyebilirsin ama YEDINCI sifirdan sonrasi anlamsiz
y = 200000.0000; // diyebilirsin ama IKINCI sifirdan sonrasi anlamsiz
[/code]

isin dogrusu 7. hanenin anlami konusunda emin degiliz cunku kusurat var. Ama emin olabiliriz ki ornegin 5. hane hep anlamli olacaktir. Yani

[code]
printf ( "%.5f", x );
[/code]

yazdigin takdirde yukledigin seyi(round edilmis halini dogru olarak) goreceksin(Acaba "%.6f" icin de dogru mu? onu da siz dusunun )

Dikkat ederseniz gonderdiginiz orneklerin hepsinde 7. anlam-siz sayinin ayni olmamasindan yakiniyosunuz.

============
babaconda'nin bahsettigi sey aslinda baska bi problem, ve yanlis biseyi savunmaya calisiyo. Iki float'un ister ne kullanirsan kullan esit olmasini garanti edemezsin. Ornegin (A+B)+C == A+(B+C) gibi basit bi islem siralamasi degisikligi bile sonucu yamultabilir. Bu sebeple fuzzy compare kullaniriz:

[code]
bool are_equal ( float x, float y )
{
return fabsf ( x - y < 1e-5 );
}
[/code]
Başa dön
Kullanıcı profilini gör E-Posta'yı gönder Kullanıcının web sitesini ziyaret et
leblebi



Kayıt: Jan 05, 2004
Mesajlar: 127
Nereden: q3dm17

MesajTarih: Tue Jul 19, 2005 3:19 am    Mesaj konusu: ... Alıntıyla Cevap Ver

Kod:
 
x = 2.000000000; // diyebilirsin ama YEDINCI sifirdan sonrasi anlamsiz
y = 200000.0000; // diyebilirsin ama IKINCI sifirdan sonrasi anlamsiz


noktadan sonraki sifirdan bahsediyoruz tabii ki
Başa dön
Kullanıcı profilini gör E-Posta'yı gönder Kullanıcının web sitesini ziyaret et
devreci



Kayıt: Mar 04, 2005
Mesajlar: 256

MesajTarih: Tue Jul 19, 2005 1:06 pm    Mesaj konusu: Alıntıyla Cevap Ver

valla hocam çok güzel yazmıssınız elinize sağlık feyz aldık Smile

sistemi açıklamak için şöyle küçük bir açık kod yazdım

http://www.free-webhosting.com/devreci/progs/floatsayi.exe

bakınca float sistemi anlaşılıyor
Başa dön
Kullanıcı profilini gör E-Posta'yı gönder Kullanıcının web sitesini ziyaret et
BabaCONDA



Kayıt: Jun 12, 2005
Mesajlar: 58
Nereden: İstanbul

MesajTarih: Tue Jul 19, 2005 9:12 pm    Mesaj konusu: Alıntıyla Cevap Ver

peki biraz bekleyinde ben sizin tezlerinizi çürütüp ramsesin mumyasına çevirecek bir kod örneği gönderyim.

Mustafa abiiiiiiiiiiiii.......... Rolling Eyes
Başa dön
Kullanıcı profilini gör E-Posta'yı gönder Kullanıcının web sitesini ziyaret et
KePhReNZ



Kayıt: Jan 02, 2003
Mesajlar: 55
Nereden: İzmir

MesajTarih: Tue Jul 19, 2005 10:40 pm    Mesaj konusu: Alıntıyla Cevap Ver

Merhaba,

Smile Haha böyle demeye devam edersen güzel abim , bilgisayarın mucitlerini sıcak mezarlarından kaldırırsın , o zaman görürürz anyayi mumyayı

Vermiş olduğun web sayflarını inceledim bizi haksız çıkaran tek satıra rastlamadım ...

Mevzu şu sınırlı kümeyle sınırsızlığı temsil ediyorsun bunun için mipmapping, antialiasing vs war.

Eğer küsüratlı sayılarla iş yapıyorsan minimum bir hata payını kontrol etmelisin, bu böyledir , böyle olmuştur, böyle olacaktır ...

Saygılarımla
Ahmet Bilgili
Başa dön
Kullanıcı profilini gör E-Posta'yı gönder
Mesajları göster:   
Yeni Başlık Gönder   Cevap Gönder    www.oyunyapimi.org Forum Ana Sayfası -> Programlama Dilleri ve Algoritmalar Tüm saatler GMT +2 Saat
Sayfa Önceki  1, 2
2. sayfa (Toplam 2 sayfa)

 
Forum Seçin:  
Bu forumda yeni konular açamazsınız
Bu forumdaki mesajlara cevap veremezsiniz
Bu forumdaki mesajlarınızı değiştiremezsiniz
Bu forumdaki mesajlarınızı silemezsiniz
Bu forumdaki anketlerde oy kullanamazsınız


Powered by phpBB 2.x.x © 200x phpBB Group
Türkçe Çeviri : Onur Turgay & Erdem Çorapçıoğlu
Türkçe Düzenleme: Alexis Canver
Version 2.x.x of PHP-Nuke Port by Tom Nitzschner © 200x www.toms-home.com




Web site powered by PHP-Nuke
Web site engine\'s code is Copyright © 2002 by PHP-Nuke. All Rights Reserved. PHP-Nuke is Free Software released under the GNU/GPL license.
Sayfa Üretimi: 0.214 Saniye