
যে রেজিস্টারের মাধ্যমে বাইনারি বিটকে ডানদিকে বা বামদিকে কিংবা উভয় দিকে সরানো যায় তাকে শিফট রেজিস্টার বলে। এ রেজিস্টারে ফ্লিফ-ফ্লপগুলো চেইন আকারে একটির আউটপুট অন্যটির ইনপুটের সাথে সংযুক্ত থাকে। একটি কমন পালসের মাধ্যমে সকল ফ্লিপ-ফ্লপ ইনপুট গ্রহণ করে।
শিফট রাইট (Shift Right) রেজিস্টারঃ
3 বিটের শিফট রেজিস্টার সিমুলেশনঃ
[সিমুলেট করতে clock pulse বাটনে ক্লিক করো।]D ফ্লিপ-ফ্লপে যে ইনপুট দেওয়া হয় তাই আউটপুট হিসেবে পাওয়া যায়। এখানে ফ্লিপ-ফ্লপগুলো ‘Positive Edge Triggering’ অর্থাৎ ক্লকের মান কেবলমাত্র ০ থেকে ১ এ উত্তীর্ণ হলেই সচল হয়। প্রাথমিক অবস্থায় প্রতিটি ফ্লিপ-ফ্লপের আউটপুট এর মান ০ থাকে। একবার ক্লক পালস দিলে প্রতিটি বিট ফ্লিপ-ফ্লপের ডান দিকে সরতে থাকে এবং সর্বশেষ বিটটি হারিয়ে যায়।
মনে করি, আউটপুট Q0 = 0 , Q1 = 0 , Q2 = 0 এবং আমরা সিরিয়াল ইনপুট 01101 দিলাম।
১ম ক্লক পালসেঃ ইনপুটের (01101) সর্ব ডানের বিটটি (LSB) প্রথম ফ্লিপ-ফ্লপের ইনপুট (D0) হবে ফলে আউটপুট (Q0) এর মান হবে 0 থেকে 1 হবে, এবং পূর্বের বিট স্থানান্তরিত হয়ে Q1 ও Q2 এর মান যথাক্রমে 0 ও 0 হবে।
২য় ক্লক পালসেঃ পূর্বের বিট স্থানান্তরিত হয়ে আউটপুট Q0 , Q1 ,ও Q2 এর মান যথাক্রমে 0, 1 ও 0 হবে।
৩য় ক্লক পালসেঃ পূর্বের বিট স্থানান্তরিত হয়ে আউটপুট Q0 , Q1 ,ও Q2 এর মান যথাক্রমে 1, 0 ও 1 হবে।
একইভাবে প্রতিটি পালসে ফ্লিপ-ফ্লপের আউটপুট এক বিট করে ডানে সরতে থাকবে এবং সর্বশেষ বিটটি হারিয়ে যাবে
- প্রতিটি ফ্লিপ-ফ্লপের ক্লক একই লাইনে সংযুক্ত থাকে।
- প্রাথমিক অবস্থায় সকল আউটপুট (Q) এর মান ০ থাকবে।
- ক্লকের পজেটিভ ট্রানজিশনের জন্য কাজ করে।
- সার্কিট সচল হলে ইনপুটের মান ডান দিকের ফ্লিপ-ফ্লপে স্থানান্তর হতে থাকে।
- প্রতি ক্লক পালসে শেষের ফ্লিপ-ফ্লপে থাকা বিটটি হারিয়ে যায়।