প্রোগ্রামাররা যখন পঞ্চকার্ড ব্যবহার করত তখন প্রোগ্রামিং কীভাবে কাজ করত?


11

আমি এটি দেখেছি: পাঞ্চকার্ডে প্রোগ্রাম শিখছি

এবং আমি এটি দেখেছি: http://en.wikedia.org/wiki/Computer_pogramming_in_t__punchched_card_era

তবে তারা কাঙ্ক্ষিত হওয়ার জন্য অনেক কিছু ছেড়ে যায়।

প্রোগ্রামাররা যখন পঞ্চকার্ড ব্যবহার করেন তখন প্রোগ্রামাররা কীভাবে প্রোগ্রাম করেছিল তা আমাকে কেউ ব্যাখ্যা করতে পারেন? বিশেষত, ইনপুট কম্পিউটারগুলির সিস্টেমটি খোঁচা কার্ড থেকে নিজেই নির্দেশিকা আহরণের জন্য ব্যবহৃত হত।

আমি রেট্রোকম্পিউটার সম্পর্কে খুব বেশি জানি না, সুতরাং আপনার পরিচিত যে কোনও একটি ইনপুট সিস্টেম ঠিক আছে। আরও সাধারণ উত্তর প্রশংসা করা হয়।

উত্তর:


16

এক কথায়, খারাপভাবে।

কোনো মেশিনে অন্তত আমি কখনো ব্যবহৃত বা শুনে, তুমি করেছ না একটি সময় যদিও এক ভোজন কার্ড। এমন স্বয়ংক্রিয় কার্ডের পাঠকরা ছিলেন যা এক মিনিট কয়েকশত কার্ড খাওয়াত এবং পড়ত (সম্ভবত 1000 / মিনিটের কাছাকাছি, তবে আমি সঠিক চশমা সম্পর্কে নিশ্চিত নই)।

একটি সাধারণ ক্ষেত্রে আপনি কোডটি হাতে হাতে লিখেছিলেন, তারপরে এটি কার্ডগুলিতে খোঁচা দিয়েছিলেন। প্রতিটি কার্ডে কোডের একটি লাইন থাকে (80 টি কলাম পর্যন্ত)। আপনি কার্য সম্পাদনের জন্য কার্ড ডেকে নিয়ে গিয়েছিলেন। ব্যাকলগের উপর নির্ভর করে এক ঘন্টা বা এক দিন বা তার পরে যে কোনও জায়গায়, ফলাফলের মুদ্রণের সাথে আপনি নিজের ডেকে ফিরে পেয়েছিলেন।

আমার সম্ভবত যুক্ত করা উচিত: যেহেতু আপনার কার্ড ডেকটি একটি চাকরিরূপে চলেছে, আপনি কেবল প্রোগ্রামের জন্য কোডটি জমা দেননি - আপনার সংকলন এবং সম্পাদন করার দিকনির্দেশ সহ একটি ব্যাচ ফাইল / শেল স্ক্রিপ্টের সাথে আপনাকে অস্পষ্টভাবে কিছু লিখতে হয়েছিল। কোড। আইবিএম জেসিএল (একটি উদাহরণস্বরূপ) এর হোলিরিথ-কার্ড উত্স দ্বারা ভারী প্রভাবিত রয়েছে।

আর একটি ছোটখাটো বিষয়: বেশিরভাগ সিস্টেমে আমার মনে আছে আপনি সাধারণত প্রতিটি পাঞ্চ কার্ডে একটি লাইন নম্বর অন্তর্ভুক্ত করেন। আপনি যদি পারেন তবে আপনি অবশ্যই একটি ডেক বাদ দেওয়া এড়াতে পারেন, কিন্তু যখন (যদি না হয়) কোনওটি বাদ পড়ে যায়, তবে এটি আসলে ট্র্যাজেডির প্রায়শই নয় যা অনেকে কল্পনা করেছিলেন। আকর্ষণীয় পার্শ্ব বিন্দু: কমপক্ষে কার্ড সোর্টারগুলি আমি দেখেছিলাম যে একটি রেডিক্স সাজ্ট ব্যবহার করা হয়েছিল - তারা লাইন নম্বরটির একটি অঙ্কের ভিত্তিতে কার্ডগুলিকে 10 টি বিভক্ত করে আলাদা করে দেবে, তারপরে সেগুলিকে একত্রে "মার্জ" করবে (সমস্ত কার্ডকে একটিতে ফেলে দিন) বিন ক্রমে) তারপরে লাইন সংখ্যায় আপনার যতগুলি সংখ্যা ছিল ততবার পুনরাবৃত্তি করুন।

হলিরিথ কার্ডগুলি অত্যন্ত প্রভাবশালী ছিল - সীমা হিসাবে 80 টি কলাম এখনও প্রায় বিরক্তিকর ডিগ্রীতে টিকে থাকে। অন্ততপক্ষে কন্ট্রোল ডেটা মেইনফ্রেমগুলিতে ফাইল সিস্টেমের মতো জিনিসগুলিও বেশ ভারীভাবে প্রভাবিত হয়েছিল। হোলিরিথ কার্ডগুলি বেশিরভাগ পরে চলে যাওয়ার পরে, এর মধ্যে অবশিষ্টাংশগুলি ওএসে দৃশ্যমান ছিল - উদাহরণস্বরূপ, পাঠ্য ফাইলগুলি প্রায়শই ৮০-অক্ষর রেকর্ডের একটি সিরিজ হিসাবে সংরক্ষণ করা হত, যতক্ষণ না একটি লাইন আসলে কতগুলি / কত অক্ষর অন্তর্ভুক্ত থাকে less আমি এখনও ইউনিক্সের মতো সিস্টেমের "পশ্চাদপদতা" দেখে আমার অবাকের কথা মনে করতে পারি যেখানে আপনাকে কেবল এটির সন্ধানের পরিবর্তে কোনও পাঠ্য ফাইলের এন লাইন খুঁজে পেতে পূর্ববর্তী সমস্ত লাইন পড়তে হয়েছিল read


আমি মনে করি আপনি যা বর্ণনা করেছেন তা কাজ করার অনেক আধুনিক উপায়। কার্ড বাছাই এবং ফিডার? মঙ্গলভাব, আমার মা তার জন্য হত্যা করতেন ...: - ডি
লিটলডিভি

@littleadv: Hollerith কার্ড এবং ফীডার predate কম্পিউটারের। আমি সোর্টার্স সম্পর্কে কম নিশ্চিত, তবে আমি নিশ্চিত যে তারাও তা করে।
জেরি কফিন

1
আমরা হাতে হাতে কাগজপত্রে আমাদের সিওবিএল এবং আরপিজিআইআই লিখতাম তখন কার্ডগুলি নিজেই খোঁচা দিয়ে দিতাম। কার্ডের ডান 4 টি অক্ষর প্রোগ্রামটির "লাইন নম্বর" এর জন্য ব্যবহৃত হত। হ্যাঁ, আমি এর আগে কার্ডের ট্রে ফেলেছি, আমাদের চাবি পাঞ্চের মতো একই ঘরে একটি কার্ড বাছাইকারী ছিল। মনে রাখবেন, COBOL এবং RPGIII খুব কঠোরভাবে ফর্ম্যাট করা ভাষা ছিল। আপনার কোডটি চালানোর জন্য নির্দিষ্ট আদেশে থাকতে হয়েছিল। তারপরে কার্ডগুলির ট্রে (গুলি) চালানোর জন্য নেওয়া হয়েছিল এবং অপারেটর কাজটি চালিয়েছিল, আপনাকে কার্ডের ট্রে সহ আপনার প্রিন্টআউট দেয়। আশা করি, আপনার কোন ভুল ছিল না।
এমবি 34

4
আমাদের কাছে দুটি 029 কীপঞ্চ মেশিন সহ একটি কক্ষ ছিল , তবে কোনও বাছাইকারী নেই। সুতরাং যদিও কার্ড সংখ্যা ছিল, আমরা সমাজের সারাংশ জুড়ে তির্যক রেখা আঁকতে ব্যবহৃত ভালো । আপনি যদি একটি বাক্স গাড়ি ফেলে রাখেন, সাধারণত তারা বেশ কয়েকটি গ্রুপে মেঝেতে এসে দাঁড়াত, যা আপনি শুরু করার জন্য এই লাইনগুলির উপর ভিত্তি করে বেশ ভালভাবে একসাথে টুকরো টুকরো করতে পারতেন এবং কার্ডের নম্বরগুলি যথাযথভাবে যাচাই করে কাজ শেষ করতেন।
tcrosley

2
প্রোগ্রামগুলিতে কেবল কার্ডগুলিতে খোঁচা ছিল না, ইনপুট ডেটা এবং আউটপুট ডেটা কার্ডগুলিতে খোঁচা দেওয়া হয়েছিল। কার্ডগুলি হ'ল 70 এর দশকের শেষের দিকে এবং 80 এর দশকের প্রথমদিকে স্টোরেজের প্রাথমিক ফর্ম। সংকলক এবং লোডার ব্যতীত অন্য যে কোনও কিছুর জন্য ডিস্ক স্পেস ব্যবহার করা খুব ব্যয়বহুল ছিল।
গিলবার্ট লে ব্ল্যাঙ্ক

6

আপনি সম্পাদক হিসাবে কার্ড পাঞ্চ ব্যবহার করেছেন।

  • সন্নিবেশ করুন == একটি নতুন কার্ড খোঁচা।
  • সরান == কার্ডটি তুলুন এবং এটিকে ডান জায়গায় নিয়ে যান।
  • মুছুন == কার্ডটি বের করুন এবং এটি বিনে ফেলে দিন
  • অনুলিপি করুন - ভাল কার্ডের পাঞ্চগুলির একটি অনুলিপি ফাংশন ছিল যা কলাম দ্বারা অন্য কার্ড কলামটি অনুলিপি করতে পারে।
  • একটি অক্ষর পুনঃস্থাপন করুন - অনুলিপি ফাংশন ব্যবহার করুন তবে প্রতিস্থাপনের অক্ষরগুলি টাইপ করুন যখন আপনি যে চরিত্রটি প্রতিস্থাপনের প্রয়োজন হবে সেখানে পৌঁছান।
  • একটি অক্ষর মুছুন - অনুলিপি ফাংশনটি ব্যবহার করুন তবে অনুলিপিযুক্ত কার্ডটি এটি চলমান বন্ধ করতে হোল্ড করুন এবং আপনি যে কোনও অক্ষরকে "মুছতে" চান তার জন্য স্থান হিট করুন
  • অক্ষর সন্নিবেশ করান - অনুলিপি ফাংশনটি ব্যবহার করুন তবে নতুন পাঠ্যটিতে টাইপ করার সময় মূল কার্ডটি অস্থির রাখুন।

বেশিরভাগ অংশের কার্ডগুলির জন্য "অপরিবর্তনীয়" তবে আপনি পাতলা অস্বচ্ছ স্টিকি টেপ দিয়ে গর্তগুলির উপর টেপ করে অক্ষরগুলি সরিয়ে ফেলতে পারেন।

আপনি যথাযথ জেসিএল দ্বারা বেষ্টিত আপনার প্রোগ্রামে পড়েছেন এবং ফলাফলটি ছড়িয়ে দেওয়ার জন্য প্রিন্টারের জন্য অপেক্ষা করেছিলেন। (ঘন্টা হতে পারে!)


4

খুব আস্তে

আমার মা যেমন প্রোগ্রামার ছিলেন, তাই বড় হওয়ার সময় বাড়িতে প্রচুর কার্ড ছিল। তারা যা করবে তা হ'ল কার্ডগুলিতে প্রোগ্রামটি এনকোডিং করা এবং তারপরে একে একে কার্ড পাঠকদের কার্ডগুলি খাওয়ানো (ভোটদানের মেশিনগুলি এখন কীভাবে কাজ করে তার সমান)। আপনি যদি কার্ডগুলি বাদ দেন - আপনি অনেক সমস্যায় পড়বেন, কারণ আপনার জন্য কেবলমাত্র এক্স মেশিন সময় বরাদ্দ রয়েছে এবং আপনাকে সেগুলি সঠিক ক্রমে সাজিয়ে তুলতে হবে এবং মেশিনটিকে আবারও খাওয়ানো আবার শুরু করতে হবে এবং চেষ্টা করার চেষ্টা করবে এটি পরবর্তী প্রোগ্রামার আপনাকে লাথি মারার আগে সময় মতো এটি। একটি তুচ্ছ (আমাদের বর্তমান মানদণ্ডে) প্রোগ্রামের জন্য কয়েকশো প্রয়োজন হতে পারে, হাজার হাজার না হলেও, এবং লোড করার জন্য এবং চালানোর জন্য কয়েক ঘন্টা মেশিনের সময় লাগতে পারে।

খুব ক্লান্তিকর।


অন্যদিকে, সম্ভবত ইন্ডাস্ট্রিতে অনেক কম পরজীবী ছিল :)
হাইলেম

আপনি কীভাবে "পরজীবী" সংজ্ঞায়িত করছেন তার উপর নির্ভর করে .... :)
littleadv

দুর্ভাগ্যক্রমে আমি তখন থেকে বিখ্যাত "বাগগুলি" বোঝাতে চাইনি, তবে এখনকার আইটি ব্যান্ডওয়্যাগনে ঝাঁপিয়ে পড়েছে এমন লোকদের দল।
হাইলেম

ওহে নস্টালজিয়া ... পুরানো কালে পৃথিবী এত ভাল জায়গা ছিল! তবে সত্যই, এটি বেশিরভাগ কারণেই আমরা খারাপ জিনিসগুলি ভুলে যাওয়ার প্রবণতা করি। সেখানে সমস্ত ধরণের লোকেরা সমস্ত ধরণের ব্যান্ডওয়াগনে ঝাঁপিয়ে পড়েছিল, সর্বদা ছিল এবং সর্বদা থাকবে।
littleadv

Shhhh। ঐগুলোই দিন ছিল. এখানেই শেষ. (আমি আসলে জানি না, আমি সেখানে ছিলাম না))
হাইলেম

1

কিছু উপায়ে "খুব আলাদা নয়", কিছু উপায়ে "খুব আলাদা"।

তারা সাধারণত কাগজে সোর্স কোড লিখেছিল। এরপরে এটি পুনরায় টাইপ করা হয়েছিল পঞ্চ কার্ডগুলিতে (প্রতিটি কার্ডের উত্স কোডের একটি লাইন, সাধারণত লাইন নম্বর সহ, যাতে আপনি সহজেই আপনার উত্স কোডটি ঠিকঠাক করতে পারেন যখন এটি ভুল ক্রমে শেষ হয়)।

প্রোগ্রামটি কীভাবে প্রোগ্রামটি সংকলন করতে হয় তার নির্দেশাবলী সম্বলিত প্রোগ্রামটি উপস্থাপিত হয়েছিল এবং এটি কীভাবে চালানো যায় এবং কোন ডেটা ফাইল (গুলি) ব্যবহার করতে হবে (বা মাউন্টে টেপ ইত্যাদি ইত্যাদি) সম্পর্কিত নির্দেশাবলী সহ প্রিফিক্স করা হয়েছিল।

এটি তখন অপারেটরদের কাছে জমা দেওয়া হয়েছিল, যারা কার্ডগুলি একটি স্পিড-রিডারে লোড করবে, কাজ চালাবে এবং ফলাফলগুলি প্রিন্ট-আউটগুলিতে ফিরিয়ে দেবে।

একটি সাধারণ সম্পাদনা / সংকলন / ফলাফল চক্র "আগামীকাল" এর আদেশ অনুসারে, লোকেরা সিনট্যাক্স ত্রুটির জন্য তাদের কোডটি আরও ভৌত বেঞ্চ-পরীক্ষার দিকে ঝুঁকছিল।

ইন্টারেক্টিভ ডিবাগিংয়ের কোনও সম্ভাবনা না থাকলে, মৃত্যুদন্ড কার্যকর করার একমাত্র উপায় হ'ল সম্পাদনের সময় মুদ্রিত ডিবাগ লাইন।

কিছু জায়গায় কোডটি পাঞ্চ কার্ডের চেয়ে পাঞ্চ টেপে থাকবে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.