SABİT TABLOLAR – ALGOL Yazılım Dili – ALGOL Analizi Yaptırma Fiyatları – ALGOL Yazılım Analizi Örnekleri – Ücretli ALGOL Analizi Yaptırma – ALGOL Yazılımı Yaptırma
SABİT TABLOLAR
CONSTAB sözdizimsel analiz sırasında doldurulan bir tablodur; düzanlamlamaların değerlerini içerir. Ayrıca, bu tablo çeviri sırasında, örneğin rutinler hakkında bilgilerle veya derleme zamanında oluşturulabilen veri yapılarıyla tamamlanacaktır.
Makine koduna çeviri sırasında, CONSTAB parametreleri çalışma zamanı prosedürlerine aktarmak için de kullanılır. Açıkçası, CONSTAB çalışma zamanında mevcut olmalıdır.
IC üretiminin sonunda sabit tablonun durumu CONSTAB§ olarak yeniden yönlendirilirken, çalışma zamanı örneğine CONSTAB% olarak atıfta bulunulacaktır. Çeviri sırasında, constabpm, CONSTAB’ın ilk boş hücresine işaretçiyi temsil eder ve constabp, bazı bilgilere yönelik geçerli işaretçi olarak kullanılacaktır.
Constabpm, CONSTAB’a her yeni bilgi eklendiğinde artırılmalıdır; bu artış, çeviri algoritmalarında gizlidir. PECTAB sözdizimsel analiz sırasında doldurulan bir tablodur, kipler ile sınırlar ve esneklik bilgilerini içerir. Modlar, bağlantılı listeler biçiminde saklanır.
DECTAB, başlatılmış bir kısımdan ve muhtemelen çevrilmekte olan programa özel bir kısımdan oluşur. Başlatılan kısım, mevcut modları kolayca tanımak (optimizasyonların gerçekleştirilmesine izin verir) ve standart başlangıçta tanımlanan modları içermek içindir.
Prensipte DECTAB sözdizimsel analizden sonra tamamlanır; bilgileri sözdizimsel analizden (SOPROG) kaynaklanan programdan alınır.
Modlar ve bildiriciler, dectabp veya basitçe mod olarak gösterilen DECTAB işaretçileri olarak manipüle edilecektir. DECTAB işaretçileri, bir mod veya deklaran anlamına gelen ICI’lerin parametreleri olarak kullanılır. Bu tür bilgiler, diğer şeylerin yanı sıra IC fonksiyonlarını makine komutlarına ayrıştırmak için kullanılacaktır. Tekdüzelik nedenleriyle, IC üretiminden sonraki DECTAB durumu DECTAB§ olarak gösterilecektir.
DECTAB aynı zamanda, IC üretimi sırasında farklı bilgi türlerini hesaplamak için de kullanılır; bilgi, depolama tahsisinin parametrelerini etkiler. Bu bilgi, parametre olarak ~ECTAB girişi olan prosedür çağrıları yoluyla elde edilir. Modlar gibi, bu prosedürler yinelemelidir. Burada gayri resmi bir şekilde açıklanmaktadırlar.
Prensip olarak, DECTAB§ tamamen makine kodu üretimi sırasında yorumlanabilir: çalışma zamanında kullanılabilir olması gerekli değildir. Ancak, derleyici projemizi kısaltmak için bir çalışma zamanı örneğine DECTAB% sahip olmaya mecbur kaldık.
Bu, mod birleşim değerlerinin manipülasyonu sırasında iki durumda kullanılır: böyle bir değerin ek yükü %’si, değerin gerçek modunu belirten bir DECTAB% işaretçisi dectabp’dir. Birleşik değerleri içeren yapılar çevrildiğinde, talimat setleri oluşturulur.
Her olası gerçek modun bir değerinin manipülasyonu için. Tüm talimat kümeleri arasındaki seçim, genel gider Z ile birliği oluşturan her bir mod arasındaki mod karşılaştırmalarına dayalı olarak üretilen bir anahtar sayesinde gerçekleştirilir; DECTAB% bu amaçla kullanılır. Bu çalışma zamanı RECTAB% kullanımının, her bir birlikteki kurucu modların kesin bir sıralamasına sahip olma pahasına önlenebileceğini unutmayın.
Çöp toplama sırasında: bir değerin izlenmesi, adresi ve moduna bağlıdır; İzlemeyi yönlendirmek için PEC/AB% kullanılmalıdır. İzleme için çalışma zamanı rutinlerinin moddan ve değere erişimden zorlanmadan üretilebileceğini unutmayın. Böyle bir durumda çalışma zamanında PECTAB% kullanımından kaçınılır.
Çeviri sırasında her türlü bilginin kaydedilmesi ve/veya bir yapının bir bölümünden diğerine aktarılması gerekir. ALGOL 68’in özyinelemeli doğası gereği, bilgi genellikle yığınlar aracılığıyla ele alınmalıdır. Birkaç yığın uzmanlaşmıştır (BOST, TOFST), ancak çok amaçlı bir yığına sahip olmak çok yararlıdır, bu MSATCK olarak gösterilecektir.
Blok girişinde ve çıkışında run-time RANST% organizasyonu için uygun kodu üretmek amacıyla, o bloğun çevirisi sırasında her blok için bir dizi statik bilgi toplanmalıdır; bu bilgiler şunlardır.
Bu bilgiler BLOCKTAB tablosunda hesaplanır. Burada her blok için bir giriş vardır. Bu nedenle, tüm bloklar kümülatif bir blok numarası vasıtasıyla statik olarak farklılaştırılır.
Cp değerleri tablosu
Termodinamik tablolar
Termodinamik Tablolar pdf
Termodinamik tablolar
Termodinamik A4 tablosu
Havanın entalpi tablosu
Termodinamik tablolar
Suyun cp değerleri tablosu
Blokların statik iç içe geçmesini temsil eden olağan blok numarasının aksine, kümülatif blok sayısı her blok için farklıdır. Çeviri sırasında bn ve bno, sırasıyla blok numarasına ve çevrilmekte olan bloğun kümülatif blok numarasına karşılık gelen iki integral değişken olacaktır.
BLOCKTAB, makine kodu üretimi için kullanılacaktır; ICI üretiminden sonraki durumu BIOCKTAB§ olarak gösterilecektir. Bir ICI’nin eylemlerinin açıklaması sırasında bir BLOCKTAB§ öğesinin alanları kullanıldığında, 8idsz o_~BLOCKTAB§ [{] gibi seçimler her yerde tekrarlanmaz; BLOCKTAB§ [i]’nin sidsz’leri için sidsz# gibi notasyonlar tanıtıldı.
Her blok girişinde ve çıkışında~ bn ve bnc yönetimi sırasıyla INBLOGKI ve OUTBLOCK1 derleyici rutinleri tarafından gerçekleştirilir.
INBLOCXI, bir paraxleter bnso ile çağrılır, yani girilen bloğun kapsam bloğunun bn’sidir. INBLOOKI ve OUTBLOCXI’nin eylemleri şimdi açıklanmaktadır.
Yukarıdaki boyutlar 11.0.3.1’de tanımlanmıştır, bir BLOCK%’deki çalışma zamanı cihazlarının statik parçalarının boyutlarını temsil ederler: %SIDST, %DMRWOST, %GCWOST ve %SWOST. Bu boyutlar, her bloğun çevrilmesi sırasında B[OCKTAB’de hesaplanır. Bunlara bnc girişi sayesinde erişilir.
Her blok girişinde, farklı BLOCKTAB alanları ve özel olarak boyutlar INBLOCK2 prosedürü vasıtasıyla başlatılır. BLOCKTAB içindeki boyutlar, her öteleme anında karşılık gelen %RANST bölümlerinin geçerli maksimum boyutlarıdır. Bu boyutlar, sırasıyla SIPST%, PMRWOST%, @CWOST% veya SWOST%’de yeni bir değerin veya yeni bilginin depolandığı bir eylem çevrildiğinde güncellenir.
Son üç cihaz, belirli bir blok içinde küme kontrollü olduğundan, karşılık gelen cihaz içindeki ilk boş hücrelerin göreli adreslerini temsil eden mevcut dmma, ~cc ve svosto’ya ihtiyacımız var. Sırasıyla QMRWOST~, GCWOST% ve SWOST% üzerinde bir bilgi depolamak veya bunlardan bir bilgiyi silmek için kod üretildiğinde bu sayaçların güncellenmesi gerekir. Bu, aşağıdaki prosedürler aracılığıyla yapılır.
Bir blok içinde, SIDST~’den bir değer asla silinmez, BLOCKTAB’ın 8idsz alanı akım (%) sayacı olarak kullanılabilir. BLOCKTAB’da sidsz’nin statik yönetimi için aşağıdaki prosedür kullanılır.
Ayrıntılı açıklamada, artırma ve azaltma işlemleri örtülüdür. /~msz, gcsz ve 8Wostsz boyutları, tüm iç bloklar hariç bir bloğu karakterize eder. Bu nedenle, bir iç bloğa her girildiğinde, dmrc, gcc ve swostc sayaçlarının MSTACK’e kaydedilmesi gerekir ve iç blok bırakıldığında geri yüklenir.
Cp değerleri tablosu Havanın entalpi tablosu Suyun cp değerleri tablosu Termodinamik A4 tablosu Termodinamik tablolar Termodinamik Tablolar pdf Termodinamik tablolar Yunus Çengel PDF