SORU
16 Ocak 2015, Cuma


Nasıl C veri türleri “doğrudan en bilgisayarlar tarafından desteklenen”?

K okuyorum&R“”. C Programlama Dili ve geldi bu ifade [Giriş, s. karşısı 3]:

Veri tipleri ve kontrol yapıları C tarafından sağlanan doğrudan en bilgisayarlar tarafından desteklenmektedir çünkü, çalışma zamanı kitaplığı kendine yeten uygulamak için gerekli programları çok küçük.

Kalın deyimi ne anlama geliyor? Veri türünün bir örneği ya da bir kontrol yapısı vardeğildoğrudan bir bilgisayar tarafından desteklenen

CEVAP
16 Ocak 2015, Cuma


Evet, veri türleri doğrudan desteklenmektedir.

Gömülü sistemlerde donanım kayan nokta birimi yok. Bu gibi kod yazarken yani:

float x = 1.0f, y = 2.0f;
return x   y;

Böyle bir şey aktarılarak:

unsigned x = 0x3f800000, y = 0x40000000;
return _float_add(x, y);

O zaman derleyici veya standart kütüphane gömülü sisteminizde bellek kaplar _float_add(), bir uygulama sağlamak. Eğer gerçekten küçük bir sistem üzerinde bayt saydığına göre, bu ekleyebilirsiniz.

Başka bir yaygın örnek 64-bit doğrudan 32-bit sistemler tarafından desteklenen tamsayı (1999 yılından bu yana C standartlong long),. Eski SPARC sistemler tamsayı çarpma destek vermedi, çarpma zamanı tarafından sağlanan gerekiyordu. Başka örnekler de var.

Diğer diller

Buna karşılık, diğer diller daha karmaşık öğeler var.

Örneğin, Lisp bir sembol çalışma zamanı desteği, Lua gibi tablolar, Python dizeleri, Fortran, diziler, vesaire bir sürü gerektirir. Eşdeğer tip C genellikle ya da öyle bir standart kütüphane (standart semboller veya tablolarda) ya da çok daha basit ve yok ihtiyaç fazla çalışma zamanı desteği (diziler C temelde sadece öğüt, null sonlandırılmış bir dize hemen hemen bu kadar basit).

Kontrol yapıları

Önemli bir kontrol yapısı C eksik istisna işleme. Yerel olmayan çıkış setjmp() ve Kaydet ve işlemci devletin bazı bölümlerini geri yükleme longjmp(), sınırlıdır. Buna karşılık, C çalışma zamanı yığın ve çağrı yıkıcılar ve özel durum işleyicileri yürümek zorunda.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:
C

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Dopelives

    Dopelives

    30 Temmuz 2009
  • ecf150king

    ecf150king

    20 Ocak 2006
  • Tinkernut

    Tinkernut

    28 Aralık 2006