bugün
- yazarların on üzerinden komiklikleri47
- birine geç kalmak9
- üstteki yazar gözünde nasıl canlanıyor8
- cayır cayır yanan kız13
- eve atılan kızın ekşici çıkması5
- aşkım daha önce hiç patlıcan yemedim diyen kız4
- m r e r e c t o12
- larisalisa10
- beyazsemsiyeliyabanci48
- seni ne mutlu eder sorusu6
- insanlardan nefret etmek8
- zall in yaptigi gammaz anketi15
- satranç haram yasaklansın17
- uludağ sözlük discord grubu7
- abd'nin iran füzelerine müdahale etmemesi3
- gir içime hünharca12
- sabah sekizde okulda olmanın felsefi anlamsızlığı2
- güvenli bir omuz arar bazen insan4
- yer sofrası5
- eşime sormam lazım kadınları3
- parcalandim toparlanamiyorum4
- ezandan rahatsız olan kadın sanatçı12
- 7 haziran 2026 büyük sözlük ifşası32
- sözlükte erkekleri istemiyoruz18
- üstteki yazar hakkında fikrini söyle63
- neden bu kadar sevildiği anlaşılamayan şeyler7
- bruce lee4
- arkadaşlar bakar mısınız8
- güzel bir kadını terk etmek5
- yalnızlık güç değildir4
- çocuğum olmuyor ne yapmalıyım4
- afganistan islam emirliği4
- çocukken alınamayan şeyleri büyüyünce almak10
- yorgun mermi22
- park sorunu6
- gocu43
- 2014 öncesinde feto'ya küfretmek8
- chery2
- yeşilçam'da çocukken travma yaşattığınız sahneler9
- şişman kezoyu eskrim hamleleri ile zayıflatmak4
- kürt mutfağı7
- togg'a lpg taktırmak11
- en sevilen meyveler8
- timsah4
- 7 haziran 2026 aziz yıldırım'ın başkan seçilmesi11
- yazarların üstüne çizik attığı burçlar8
- filmlerde dövülen adamın güçlenip geri dönmesi3
- dul kalmak4
- müzik haramdır5
- kaslı erkek isteyen şişman kız4
while(1) ve while(10) arasında bariz farklar bulunmaktadır.
örnek: while 1 sonsuz bir döngüyü temsil eder. zaten başlangıç değeri 1 olur. true'nun 1, 5, 10, 100, 10.5, -1, -2, -3, -4, -5, -10.5 gibi değerler aldığını söylemek gerekiyor.
o yüzden true, 0 olmayan her durum demek. bu da while'ı o durumda sonsuz döngü yapıyor.
nasıl yani 0 olmayan her durum der iseniz:
0 tanımsız olduğundan negatif olarak geliyor. yok edici, yutan, nan gibi. hatta sıfırın kesirli hali dahi false çıktısı verir.
0.0 ile 0 arasında da fark yoktur. while her 0 durumunu false olarak kabul eder ve işlem yapmaz.
x > 0 durumlarında ise olay değişiyor:
while(1) durumu için:
1 = 00000001
while(10) durumu için:
10 = 00001010
o zaman burada bariz fark ortaya çıkmakta. gördüğümüz gibi bitsel karşılıkları farklı. bunların assembly ortamında akış kontrolünü sağlayan jmp instruction'ı performansı eğer ki optimizasyon etmezseniz milisaniyelik gecikmelere sebebiyet verir.
1 = 00000001 -> kontrol et başa dön.
10 = 0000101[0] -> kontrol et başa dön.
10 = 000010[1]0 -> kontrol et başa dön.
10 = 00001[0]10 -> kontrol et başa dön.
10 = 0000[1]010 -> kontrol et başa dön.
bit bit kontrol var. yazmaç 32 bitlik ise bu kontrol tek seferde yapıldığından(lojik devrelerde tek saat çevriminde üretebilir) while 1 durumunda yapılan call ile while 10 durumunda yapılan call farklı olacaktır. sistem kaynağı tüketme konusunda biraz daha fazla kaynak tüketilecektir.
peki ne olursa olsun nasıl oluyor da true oluyor?
eğer ki bir break koymazsanız 10 daima true oluyor. bu durumda while 10'un adresi jmp instruction'ı oluyor. jmp instruction'ına kendi adresini tanımlarsanız sonsuz döngü oluşur.
diyelim ki while(10)
her defasında 1 artırılan değişken var.
if değişken 10 ise
break;
değişkeni ++
o durumda jmp end olduğundan bitiyor. o ana kadar sürekli jmp L20 git oralara işte. (l20 burada rastgele bir örnek)
böyle bir while anım oldu işte.
düzenlemek gerekiyor dediler ak kafası gibi davrananlar varmış. laf sokuyormuş. bu bilgiyi ihtiyacı olan görüp alır belki.
örnek: while 1 sonsuz bir döngüyü temsil eder. zaten başlangıç değeri 1 olur. true'nun 1, 5, 10, 100, 10.5, -1, -2, -3, -4, -5, -10.5 gibi değerler aldığını söylemek gerekiyor.
o yüzden true, 0 olmayan her durum demek. bu da while'ı o durumda sonsuz döngü yapıyor.
nasıl yani 0 olmayan her durum der iseniz:
0 tanımsız olduğundan negatif olarak geliyor. yok edici, yutan, nan gibi. hatta sıfırın kesirli hali dahi false çıktısı verir.
0.0 ile 0 arasında da fark yoktur. while her 0 durumunu false olarak kabul eder ve işlem yapmaz.
x > 0 durumlarında ise olay değişiyor:
while(1) durumu için:
1 = 00000001
while(10) durumu için:
10 = 00001010
o zaman burada bariz fark ortaya çıkmakta. gördüğümüz gibi bitsel karşılıkları farklı. bunların assembly ortamında akış kontrolünü sağlayan jmp instruction'ı performansı eğer ki optimizasyon etmezseniz milisaniyelik gecikmelere sebebiyet verir.
1 = 00000001 -> kontrol et başa dön.
10 = 0000101[0] -> kontrol et başa dön.
10 = 000010[1]0 -> kontrol et başa dön.
10 = 00001[0]10 -> kontrol et başa dön.
10 = 0000[1]010 -> kontrol et başa dön.
bit bit kontrol var. yazmaç 32 bitlik ise bu kontrol tek seferde yapıldığından(lojik devrelerde tek saat çevriminde üretebilir) while 1 durumunda yapılan call ile while 10 durumunda yapılan call farklı olacaktır. sistem kaynağı tüketme konusunda biraz daha fazla kaynak tüketilecektir.
peki ne olursa olsun nasıl oluyor da true oluyor?
eğer ki bir break koymazsanız 10 daima true oluyor. bu durumda while 10'un adresi jmp instruction'ı oluyor. jmp instruction'ına kendi adresini tanımlarsanız sonsuz döngü oluşur.
diyelim ki while(10)
her defasında 1 artırılan değişken var.
if değişken 10 ise
break;
değişkeni ++
o durumda jmp end olduğundan bitiyor. o ana kadar sürekli jmp L20 git oralara işte. (l20 burada rastgele bir örnek)
böyle bir while anım oldu işte.
düzenlemek gerekiyor dediler ak kafası gibi davrananlar varmış. laf sokuyormuş. bu bilgiyi ihtiyacı olan görüp alır belki.
güncel Önemli Başlıklar
