۱۳۸۶/۰۳/۰۸

هوش‌آزمایی منطقی

این روزها دیگر کمتر کسی با قلم و کاغذ و آن هم در سطح دروازه‌های منطقی ممکن است مدار طراحی کند و روش معمول استفاده از زبان‌های توصیف سخت‌افزار و نرم‌افزارهای سنتز مدارا است. با این وجود گروهی از مسائل وجود دارند که این نرم‌افزارهای سنتز از طراحی آنها عاجز هستند و در نتیجه کاندیدای خوبی برای طرح معما هستند! در حین وبگردی‌های روزانه،‌ به این معمای بسیار جالب برخورد کردم:

به کمک تعداد دلخواه گیت‌های منطقی AND و OR و با استفاده از تنها «دو» گیت NOT، مداری طراحی کنید که سه ورودی A و B و C را دریافت کند و مکمل آنها را در خروجی قرار دهد. (به بیان دیگر،‌ مداری پیشنهاد کنید که سه بیت ورودی را معکوس کند،‌ با رعایت محدودیت استفاده از تنها «دو» گیت NOT و تعداد دلخواه گیت‌های AND و OR).

به همه دوستان پیشنهاد می‌کنم کمی با این معما دست و پنجه نرم‌کنند. با وجودی که برای حل آن تنها به اطلاعات بسیار مقدماتی از مدار منطقی احتیاج است، حل آن چندان بدیهی نیست :)

هیچ نظری موجود نیست: