Programcılar zımba kartlarını kullandığında programlama nasıl çalıştı?


11

Bunu gördüm: Zımba kartlarında programlamayı öğrenme

ve şunu gördüm: http://en.wikipedia.org/wiki/Computer_programming_in_the_punched_card_era

ama istenecek çok şey bırakıyorlar.

Herkes programcıların kartpostal kullandıklarında nasıl programlandığını açıklayabilir mi? Özellikle, delikli kartın kendisinden talimatlar elde etmek için kullanılan giriş bilgisayarları sistemi.

Retro bilgisayarlar hakkında çok şey bilmiyorum, bu yüzden aşina olduğunuz herhangi bir giriş sistemi iyi olurdu. Daha genel cevaplar da takdir edilmektedir.

Yanıtlar:


16

Tek kelimeyle, kötü.

Eğer ki, herhangi bir makinede En azından şimdiye kadar kullanılan veya duymuş değil gerçi her seferinde kartlarını tek tek beslenirler. Dakikada yüzlerce kartı besleyen ve okuyan otomatik kart okuyucular vardı (muhtemelen yaklaşık 1000 / dakika, ancak kesin özelliklerden emin değilim).

Tipik bir durumda, kodu elle yazdınız ve kartlara zımbaladınız. Her kart bir kod satırı içerir (80 sütuna kadar). İdam edilecek kart destesini aldın. İş birikimine bağlı olarak, bir saatten bir güne veya daha geç bir süre boyunca, desteğinizi çıktıların çıktısıyla birlikte geri aldınız.

Muhtemelen eklemeliyim: kart desteniz bir iş olarak çalıştığı için, sadece programın kodunu göndermediniz - derlemek ve yürütmek için talimatlarla bir toplu iş dosyası / kabuk komut dosyasına benzer bir şey yazmak zorunda kaldınız. kodu. IBM JCL (bir örnek için) Hollerith kartı kökenlerinden büyük ölçüde etkilenmeye devam etmektedir.

Başka bir küçük nokta: hatırladığım çoğu sistemde, normalde her delik kartına bir satır numarası eklediniz. Eğer yapabiliyorsan bir güverte düşürmekten kaçındın, ama bir kişi düştüğünde, pek çok kişinin hayal ettiği trajedi değildi. İlginç yan nokta: en azından gördüğüm kart sıralayıcıları bir sayı tabanı sıralaması kullandılar - kartları, satır numarasının bir rakamına dayanarak 10 kutuya ayırırlar, daha sonra bunları "birleştirir" (tüm kartları tek bir kutuya bırakırlar) sonra sırayla satır numaralarında hane sayısı kadar tekrarlayın.

Hollerith kartları son derece etkiliydi - bir sınır olarak 80 sütun hala neredeyse rahatsız edici derecede hayatta kalıyor. En azından Kontrol Verileri ana çerçevelerinde, dosya sistemi gibi şeyler de oldukça ağır bir şekilde etkilendi. Hollerith kartları çoğunlukla kaybolduktan sonra, bunların kalıntıları işletim sisteminde görülebiliyordu - örneğin, bir satırın gerçekte ne kadar az / çok karakterine bakılmaksızın, metin dosyaları genellikle 80 karakterlik bir dizi olarak saklandı. Hala doğrudan aramak yerine, bir metin dosyasının N satırını bulmak için önceki tüm satırları okumak zorunda kaldığınız Unix gibi bir sistemin "geri kalmışlığı" ndaki sürprizimi hala hatırlıyorum .


Açıkladığınız şeyin bir şeyler yapmanın çok daha modern bir yolu olduğunu düşünüyorum. Kart sıralayıcı ve besleyici? Tanrım, annem bunun için öldürürdü ...: - D
littleadv

@littleadv: Hollerith kartları ve besleyiciler bilgisayarlardan önce gelir . Sıralama konusunda daha az eminim ama eminim ki onlar da öyle.
Jerry Coffin

1
Eskiden COBOL ve RPGIII'larımızı kağıda elle yazardık, sonra kartları kendimiz yumrukladık. Programın "satır numarası" için karttaki sağ 4 karakter kullanıldı. Evet, daha önce bir kart tepsisi bıraktım, anahtar odasında aynı odada bir kart sıralayıcısı vardı. Unutmayın, COBOL ve RPGIII çok sıkı biçimlendirilmiş dillerdi. Kodunuzun çalışması için belirli siparişlerde olması gerekiyordu. Daha sonra kartların kaset (ler) i çalıştırmak için alındı ​​ve operatör işi çalıştırdı, böylece çıktılarınızı kart kasetlerinizle birlikte verdi. İnşallah hatalarınız olmadı.
MB34

4
Biz iki 029 keypunch makineleri , ama hiçbir sıralayıcı ile bir oda vardı . Kartlar numaralanmış olmasına rağmen, üst kısımlara böyle çapraz çizgiler çizerdik . Eğer bir kutu araba düşürdüyseniz, genellikle birkaç gruba katlanırlardı, bu da başlamak için bu hatlara dayanarak oldukça iyi bir şekilde parçalanabilir ve daha sonra kart numaralarının sırayla olduğunu doğrulayarak işi bitirebilirdiniz.
tcrosley

2
Programlar sadece kartlara değil, giriş verisine ve çıkış verileri kartlara delinmiştir. Kartlar 70'lerin sonunda ve 80'lerin başında birincil depolama biçimiydi. Disk alanı, derleyici ve yükleyici dışında başka bir şey için çok pahalıydı.
Gilbert Le Blanc

6

Kart yumrukunu editör olarak kullandınız.

  • Ekle == yeni bir kart yumrukla.
  • Taşı == kartı al ve doğru noktaya taşı.
  • Sil == kartı çıkarın ve bölmeye atın
  • Kopyala - daha iyi kart zımbaları, başka bir kart sütun sütun kopyalayabilirsiniz bir kopyalama işlevi vardı.
  • Bir karakteri değiştirme - kopyalama işlevini kullanın ancak değiştirmeniz gereken karaktere ulaştığınızda yedek karakterleri yazın.
  • Bir karakteri silme - kopyalama işlevini kullanın ancak hareket etmesini durdurmak için kopyalanan kartı tutun ve "silmek" istediğiniz her karakter için alana basın
  • Karakter ekle - kopyalama işlevini kullanın, ancak yeni metni yazarken orijinal kartı hareketsiz tutun.

Çoğunlukla kartlar "değişmez" idi, ancak ince opak yapışkan bant ile deliklerin üzerine dokunarak karakterleri kaldırabilirsiniz.

Programınızda uygun JCL ile çevrili okudunuz ve yazıcının sonuçları tükürmesini beklediniz. (Saat olabilir!)


4

Çok yavaşça.

Annem böyle bir programcıydı, bu yüzden evde büyürken tonlarca kartım vardı. Yapacakları programı kartlar üzerinde kodlamak ve daha sonra kartları tek tek kart okuyucusuna beslemekti (oylama makinelerinin şu andaki gibi). Kartları düşürdüyseniz - çok fazla sorun yaşarsınız, çünkü sadece sizin için X makine zamanınız var ve bunları doğru sırada ayarlamanız ve makineyi tekrar beslemeye yeniden başlamanız ve bir sonraki programcı sizi harekete geçirmeden önce zamanında. Önemsiz (mevcut standartlarımıza göre) bir program, binlerce olmasa bile yüzlerce kartın yüklenmesini ve çalışmasını sağlamak için saatlerce makine süresine ihtiyaç duyabilirdi.

Çok sıkıcı.


Öte yandan, muhtemelen sektörde çok daha az parazit vardı :)
haylem

nasıl "parazit" tanımlamak bağlıdır .... :)
littleadv

Ne yazık ki o zamanlar ünlü "böcekler" demek istemedim, ama şu anda IT bandwagonuna atlayan insanların orduları.
haylem

Ah nostalji ... dünya eski zamanlarda çok daha iyi bir yerdi! Ama aslında, çoğunlukla kötü şeyleri unutmaya meyilliyiz. Her türlü bandwagoya atlayan insanların orduları vardı, her zaman olmuş ve olacak.
littleadv

Shhhh. Ne günlerdi. Bu kadar. (Aslında bilmiyorum, orada değildim.)
haylem

1

Bazı açılardan "çok farklı değil", bazı açılardan "çok farklı".

Genellikle kağıt üzerine kaynak kodu yazdılar. Bu daha sonra delikli kartlara yeniden yazıldı (kart başına bir satır kaynak kodu, genellikle satır numaraları ile, böylece yanlış sırada sona erdiğinde kaynak kodunuzu kolayca düzeltebilirsiniz).

Daha sonra programa, programın nasıl derleneceğine dair talimatlar içeren kartlar eklenmiş ve programın nasıl çalıştırılacağı ve hangi veri dosyalarının kullanılacağı (veya montaj bantları vb.) İçin talimatlar eklenmiştir.

Bu, daha sonra kartları bir hızlı okuyucuya yükleyecek operatörlere gönderildiği gibi, işi çalıştırır ve sonuçları çıktılarda döndürür.

Tipik bir düzenleme / derleme / sonuç döngüsü "yarın" düzenindeyken, insanlar sözdizimi hataları için kodlarını daha paranoyak olarak kontrol etme eğilimindeydiler.

Etkileşimli hata ayıklama olanağı olmadan, yürütmeyi izlemenin tek yolu, yürütme sırasında yazdırılan hata ayıklama satırları olacaktır.

Bazı yerlerde kod, delikli kartlar yerine delikli bantta olabilir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.