Kichik-C - Small-C

Kichik-C
Tuzuvchi (lar)Ron Keyn, Jeyms E. Xendrix
Dastlabki chiqarilish1980; 40 yil oldin (1980)
YozilganC dasturlash tili
TuriTuzuvchi
LitsenziyaMualliflik huquqi bilan himoyalangan, lekin birgalikda foydalanish mumkin

Kichik-C ning ikkala qismidir C dasturlash tili, cheklangan manbalarga mos keladi mikrokompyuterlar va o'rnatilgan tizimlar va ushbu to'plamni amalga oshirish. Dastlab erta sifatida qimmatli kompilyator 1970-yillarning oxiri va 1980-yillarning boshlarida mavjud bo'lgan mikrokompyuter tizimlari uchun, shuningdek, o'quv maqsadlari uchun etarlicha sodda misol sifatida foydali bo'ldi.

Uchun Small-C-da yozilgan asl kompilyator Intel 8080 Ron Keyn tomonidan 1980 yil may oyida nashr etilgan Doktor Dobbning "Journal of Computer Calisthenics & Orthodontia". Jeyms E. Xendrix asl kompilyatorni yaxshilab kengaytirdi va yozdi Small-C qo'llanmasi. Ron ochilgan Kichik-C Xalqaro SRI PDP 11 /45 Unix John Bass tomonidan Small C-ni ishlab chiqish uchun taqdim etilgan hisob qaydnomasi tizimi. Taqdim etilgan manba kodi ga rahbariyat ruxsati bilan qo'yib yuborilgan jamoat mulki.[iqtibos kerak ] Kichik-C kichik kompyuterlar uchun ahamiyatiga o'xshash darajada muhim edi GCC kattaroq kompyuterlar uchun. Xuddi shunga o'xshash Unix o'xshashlari, kompilyator yaratadi assembler kodi, keyin uni tarjima qilish kerak mashina kodi mavjud tomonidan montajchi.

Kichik-C a qayta tiklanadigan kompilyator. Kichik-C portini faqat orqa tomon talab qiladi kod generatori va operatsion tizim interfeysidagi kutubxonalar maqsad protsessor uchun qayta yoziladi.

Til ichki to'plami

"1980 yil may oyida doktor Dobbning jurnali" 8080 yillarga mo'ljallangan kichik S kompilyatori "nomli maqolani chop etdi, unda Ron Keyn C tilining bir qismi uchun kichik kompilyatorni taqdim etdi. Tarkibchining kichik o'lchamidan tashqari eng qiziqarli xususiyati qaysi tilda yozilgan bo'lsa, uni tuzgan. Bu o'z-o'zini kompilyator edi! (Garchi bu bugungi kunda odatiy hol bo'lsa-da, o'sha paytda bu juda yangi g'oya edi.) Oddiy, bir martalik algoritm bilan uning kompilyatori 8080 protsessori uchun assotsiatsiya tilini yaratdi, ammo kichik bo'lganligi sababli uning cheklovlari bor edi, faqat ikkala turdagi belgilar, butun sonlar va bitta o'lchovli massivlarni taniydi. Faqatgina tsiklni boshqarish moslamasi while operatori edi. Boolean operatorlari yo'q edi. Buning o'rniga bit (va) (AND) va | (OR) mantiqiy operatorlari ishlatilgan, ammo bu cheklovlar bilan ham, bu juda qobiliyatli til edi va ulardan foydalanish zavq bag'ishladi, ayniqsa yig'ilish tili bilan taqqoslaganda.

Yaxshilash zarurligini tushunib, Ron meni ikkinchi versiyasini chiqarishga undadi va 1982 yilning dekabrida u doktor Dobbning jurnalida ham chiqdi. Yangi kompilyator (1) kodni optimallashtirish bilan (2) ma'lumotlarni optimallashtirish, (3) shartli kompilyatsiya qilish, (4) tashqi saqlash klassi, (5) for, do / while, switch va goto so'zlari, ( 6) kombinatsiyani tayinlash operatorlari, (7) mantiqiy operatorlar, (8) komplement operatori, (9) lokal o'zgaruvchilarni bloklash va (10) boshqa har xil xususiyatlar. Keyin 1984 yilda Ernest Peyn va men kompilyator uchun CP / M mos keladigan ish vaqti kutubxonasini ishlab chiqdik va nashr etdik. U 80 dan ortiq funktsiyadan iborat bo'lib, UNIX C standart I / O kutubxonasiga kirganlarning ko'pini - CP / M muhitiga taalluqli bo'lganlarni o'z ichiga olgan. Bu 2.1 versiyasiga va Kichik S qo'llanma mavzusiga aylandi. "[1]

Shuningdek qarang

  • BDS C (1979) - Z80 va 8080 tizimlari uchun S kompilyatori
  • MIOSYS C (1985) - TRS-80 (Z80 CPU) uchun kompilyator
  • Kichkina C (2002) - diskda joy kam bo'lgan sekin x86 va ARM kompyuterlari uchun C kompilyatori

Kichik-C variantlari

Adabiyotlar

  1. ^ Jeyms E. Xendiks. "Kirish". Kichik kompilyator: til, foydalanish, nazariya va dizayn. M & T Books 1988 / Doktor Dobbning Journal Developer Network 2005 y.
  2. ^ "BBC kompyuteri uchun kompilyatorlar". Mdfs.net.

Izohlar

  • Ron Keyn, "8080 yillar uchun kichik kompilyator", Doktor Dobbning jurnali, 1980 yil aprel-may, 5-19 betlar
  • Jeyms E. Xendrix, Small-C qo'llanmasi, Reston 1984, ISBN  0-8359-7012-4
  • Jeyms E. Xendrix, Kichik S kompilyatori: til, foydalanish, nazariya va dizayn, M & T kitoblari 1988, ISBN  0-934375-88-7
  • Jeyms E. Xendrix, Kichik S kompilyatori, M & T kitoblari 1990, ISBN  1-55851-124-5

Tashqi havolalar