مدار منطقی از چالشی ترین دروس رشته کامپیوتر در دانشگاه است که تلفات زیادی دارد. با سید علی ابراهیمی برای آموزش رایگان درس مدار منطقی رشته کامپیوتر همراه باشید.
مدار منطقی چیست ؟
مدار منطقی، مداری است که بر اساس منطق بولی عمل میکند. منطق بولی یک سیستم منطقی است که بر اساس دو مقدار منطقی، صفر و یک، استوار است.
مدارهای منطقی از عناصری مانند گیتهای منطقی ساخته میشوند. گیتهای منطقی، مدارهای سادهای هستند که یک یا چند ورودی دارند و یک خروجی تولید میکنند. خروجی یک گیت منطقی بر اساس ورودیهای آن و تابع منطقی آن تعیین میشود.
انواع مختلفی از گیتهای منطقی وجود دارد که هر کدام عملکرد خاصی را انجام میدهند. برخی از گیتهای منطقی رایج عبارتند از:
- گیت AND: خروجی گیت AND برابر با 1 است اگر و فقط اگر همه ورودیهای آن برابر با 1 باشند.
- گیت OR: خروجی گیت OR برابر با 1 است اگر و فقط اگر حداقل یکی از ورودیهای آن برابر با 1 باشد.
- گیت NOT: خروجی گیت NOT برابر با 1 است اگر و فقط اگر ورودی آن برابر با 0 باشد.
مدارهای منطقی در بسیاری از وسایل الکترونیکی، از جمله کامپیوترها، مدارهای مجتمع، و دستگاههای دیجیتالی، کاربرد دارند.
در ادامه به برخی از کاربردهای مدارهای منطقی اشاره میکنیم:
- پردازش اطلاعات در کامپیوترها
- کنترل عملکرد دستگاههای الکترونیکی
- ذخیره اطلاعات در مدارهای مجتمع
- اندازهگیری و کنترل مقادیر فیزیکی
مدارهای منطقی نقش مهمی در توسعه فناوریهای مدرن ایفا میکنند.
هدف درس مدار منطقی چیست ؟
هدف درس مدار منطقی، آشنایی دانشجویان با اصول و مفاهیم مدارهای منطقی است. این درس دانشجویان را با مفاهیم پایهای منطق بولی، گیتهای منطقی، و مدارهای منطقی ترکیبی آشنا میکند.
در پایان این درس، دانشجویان باید بتوانند:
- مفاهیم پایهای منطق بولی را درک کنند.
- انواع مختلف گیتهای منطقی را شناسایی و عملکرد آنها را توضیح دهند.
- مدارهای منطقی ترکیبی را طراحی و تحلیل کنند.
یادگیری درس مدار منطقی برای دانشجویان رشتههای مهندسی برق، مهندسی کامپیوتر، و سایر رشتههای مرتبط با الکترونیک ضروری است. این درس دانشجویان را برای درک مفاهیم پیشرفتهتر در زمینههای مهندسی الکترونیک و کامپیوتر آماده میکند.
در ادامه به برخی از کاربردهای درس مدار منطقی اشاره میکنیم:
- طراحی مدارهای منطقی ترکیبی
- تحلیل عملکرد مدارهای منطقی
- عیبیابی مدارهای منطقی
- طراحی مدارهای منطقی دیجیتالی
درس مدار منطقی یکی از دروس پایهای و مهم در زمینه مهندسی الکترونیک و کامپیوتر است. یادگیری این درس برای دانشجویان این رشتهها ضروری است.
فصل یک مدار منطقی
سیستم های عدد نویسی در مدار منطقی
سیستم های عدد نویسی در مدار منطقی برای نمایش اعداد در مدارهای منطقی استفاده می شوند. آنها به مدارهای منطقی اجازه می دهند تا اعداد را ذخیره کنند، پردازش کنند و انتقال دهند.
انواع مختلفی از سیستم های عدد نویسی در مدار منطقی وجود دارد. برخی از رایج ترین آنها عبارتند از:
- سیستم عدد نویسی باینری
- سیستم عدد نویسی هگزادسیمال
- سیستم عدد نویسی BCD
سیستم عدد نویسی باینری ساده ترین سیستم عدد نویسی است که در مدارهای منطقی استفاده می شود. این سیستم فقط از دو عدد، 0 و 1، استفاده می کند. هر رقم در یک عدد باینری را بیت می نامند.
سیستم عدد نویسی هگزادسیمال یک سیستم عدد نویسی با مبنای 16 است. این سیستم از 16 عدد، 0 تا 9 و A تا F، استفاده می کند.
سیستم عدد نویسی BCD یک سیستم عدد نویسی با مبنای 10 است. این سیستم از 10 عدد، 0 تا 9، استفاده می کند.
انتخاب سیستم عدد نویسی مناسب به نیازهای خاص مدار منطقی بستگی دارد. سیستم عدد نویسی باینری معمولاً ساده ترین و کارآمدترین سیستم است. سیستم عدد نویسی هگزادسیمال برای نمایش اعداد بزرگ یا پیچیده مناسب است. سیستم عدد نویسی BCD برای نمایش اعداد صحیحی که باید با مقادیر آنالوگ مقایسه شوند، مناسب است.
در ادامه به برخی از مزایای استفاده از سیستم های عدد نویسی در مدارهای منطقی اشاره می کنیم:
- صرفه جویی در فضای ذخیره سازی: سیستم های عدد نویسی می توانند اعداد را با استفاده از تعداد کمتری بیت نمایش دهند. این امر می تواند به صرفه جویی در فضای ذخیره سازی در مدارهای منطقی کمک کند.
- صرفه جویی در انرژی: سیستم های عدد نویسی می توانند اعداد را با استفاده از انرژی کمتری نمایش دهند. این امر می تواند به صرفه جویی در انرژی در مدارهای منطقی کمک کند.
- سرعت پردازش: سیستم های عدد نویسی می توانند اعداد را با سرعت بیشتری پردازش کنند. این امر می تواند به بهبود عملکرد مدارهای منطقی کمک کند.
مبنا 2 چیست ؟
مبنا 2 یک سیستم عدد نویسی است که از دو عدد، 0 و 1، استفاده می کند. هر رقم در یک عدد باینری را بیت می نامند.
در مبنای 2، هر رقم یک توان از 2 را نشان می دهد. برای مثال، عدد 101 در مبنای 2 برابر با 1 * 2^2 + 0 * 2^1 + 1 * 2^0 = 5 است.
مبنا 2 در بسیاری از زمینه ها، از جمله ریاضیات، کامپیوتر، و الکترونیک، کاربرد دارد. در کامپیوتر، مبنای 2 برای نمایش اعداد در حافظه و پردازنده استفاده می شود. در الکترونیک، مبنای 2 برای نمایش اعداد در مدارهای منطقی استفاده می شود.
مبنا 8 چیست ؟
مبنای 8 یک سیستم عدد نویسی است که از هشت عدد، 0 تا 7، استفاده می کند. هر رقم در یک عدد اکتال را نیت (nibble) می نامند.
در مبنای 8، هر رقم یک توان از 8 را نشان می دهد. برای مثال، عدد 123 در مبنای 8 برابر با 1 * 8^2 + 2 * 8^1 + 3 * 8^0 = 561 است.
مبنای 8 در بسیاری از زمینه ها، از جمله ریاضیات، کامپیوتر، و الکترونیک، کاربرد دارد. در کامپیوتر، مبنای 8 برای نمایش اعداد در حافظه استفاده می شود. در الکترونیک، مبنای 8 برای نمایش اعداد در مدارهای منطقی استفاده می شود.
در اینجا چند مثال از اعداد اکتال آورده شده است:
اعداد دهدهی | اعداد اکتال |
---|---|
0 | 000 |
1 | 001 |
2 | 010 |
3 | 011 |
4 | 100 |
5 | 101 |
6 | 110 |
7 | 111 |
برای تبدیل یک عدد دهدهی به اکتال، می توانید از روش زیر استفاده کنید:
- عدد دهدهی را به صورت تقسیم بر 8 ادامه دهید تا به عددی کمتر از 8 برسید.
- باقیمانده هر تقسیم را به عنوان یک نیت اکتال در سمت راست قرار دهید.
- اعداد نیت ها را از راست به چپ بخوانید.
به عنوان مثال، برای تبدیل عدد دهدهی 123 به اکتال، مراحل زیر را انجام می دهیم:
123 / 8 = 15 R 1
15 / 8 = 1 R 7
1 / 8 = 0 R 1
بنابراین، عدد 123 در مبنای 8 برابر با 171 است.
برای تبدیل یک عدد اکتال به دهدهی، می توانید از روش زیر استفاده کنید:
- اعداد نیت ها را از چپ به راست در نظر بگیرید.
- هر نیت را در توان 8 قرار دهید که در آن قرار دارد.
- حاصل را با هم جمع کنید.
به عنوان مثال، برای تبدیل عدد اکتال 171 به دهدهی، مراحل زیر را انجام می دهیم:
1 * 8^2 + 7 * 8^1 + 1 * 8^0 = 64 + 56 + 1 = 121
بنابراین، عدد 171 در مبنای 10 برابر با 121 است.
مبنا 10 چیست ؟
مبنای 10 یک سیستم عدد نویسی است که از ده عدد، 0 تا 9، استفاده می کند. این سیستم عدد نویسی در بسیاری از زمینه ها، از جمله ریاضیات، کامپیوتر، و الکترونیک، کاربرد دارد.
در مبنای 10، هر رقم یک توان از 10 را نشان می دهد. برای مثال، عدد 123 در مبنای 10 برابر با 1 * 10^2 + 2 * 10^1 + 3 * 10^0 = 123 است.
مبنای 10 یک سیستم عدد نویسی ساده و کارآمد است که برای انسان ها برای درک و استفاده آسان است. این امر به دلیل این است که انسان ها از ده انگشت برای شمارش استفاده می کنند.
مبنای 10 یک سیستم عدد نویسی مهم است که در بسیاری از زمینه ها کاربرد دارد. یادگیری مبنای 10 یک مهارت اساسی است که به شما در درک بهتر ریاضیات، کامپیوتر، و الکترونیک کمک می کند.
در اینجا چند مثال از اعداد دهدهی آورده شده است:
اعداد دهدهی |
---|
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
… |
مبنا 16 چیست ؟
مبنا 16 یک سیستم عدد نویسی است که از 16 عدد، 0 تا 9 و A تا F، استفاده می کند. این سیستم عدد نویسی در بسیاری از زمینه ها، از جمله ریاضیات، کامپیوتر، و الکترونیک، کاربرد دارد.
در مبنای 16، هر رقم یک توان از 16 را نشان می دهد. برای مثال، عدد 1A2 در مبنای 16 برابر با 1 * 16^2 + 10 * 16^1 + 2 * 16^0 = 274 است.
مبنای 16 یک سیستم عدد نویسی کارآمد است که می تواند اعداد را با استفاده از تعداد کمتری رقم از مبنای 10 نمایش دهد. این امر می تواند به صرفه جویی در فضای ذخیره سازی و انرژی کمک کند.
مبنای 16 یک سیستم عدد نویسی مهم است که در بسیاری از زمینه ها کاربرد دارد. یادگیری مبنای 16 می تواند به شما در درک بهتر ریاضیات، کامپیوتر، و الکترونیک کمک کند.
برای تبدیل یک عدد دهدهی به هگزادسیمال، می توانید از روش زیر استفاده کنید:
- عدد دهدهی را به صورت تقسیم بر 16 ادامه دهید تا به عددی کمتر از 16 برسید.
- باقیمانده هر تقسیم را به عنوان یک رقم هگزادسیمال در سمت راست قرار دهید.
- اعداد هگزادسیمال را از راست به چپ بخوانید.
به عنوان مثال، برای تبدیل عدد دهدهی 123 به هگزادسیمال، مراحل زیر را انجام می دهیم:
123 / 16 = 7 R 11
7 / 16 = 0 R 7
بنابراین، عدد 123 در مبنای 16 برابر با 7B است.
برای تبدیل یک عدد هگزادسیمال به دهدهی، می توانید از روش زیر استفاده کنید:
- اعداد هگزادسیمال را از چپ به راست در نظر بگیرید.
- هر رقم هگزادسیمال را در توان 16 قرار دهید که در آن قرار دارد.
- حاصل را با هم جمع کنید.
به عنوان مثال، برای تبدیل عدد هگزادسیمال 7B به دهدهی، مراحل زیر را انجام می دهیم:
7 * 16^1 + 11 * 16^0 = 112 + 11 = 123
بنابراین، عدد 7B در مبنای 10 برابر با 123 است.
مراحل تبدیل مبنا 10 به 2 و بلعکس
تبدیل مبنای 10 به 2
برای تبدیل یک عدد دهدهی به باینری، می توانید از روش زیر استفاده کنید:
- عدد دهدهی را به صورت تقسیم بر 2 ادامه دهید تا به عددی کمتر از 2 برسید.
- باقیمانده هر تقسیم را به عنوان یک رقم باینری در سمت راست قرار دهید.
- اعداد باینری را از راست به چپ بخوانید.
به عنوان مثال، برای تبدیل عدد دهدهی 123 به باینری، مراحل زیر را انجام می دهیم:
123 / 2 = 61 R 1
61 / 2 = 30 R 1
30 / 2 = 15 R 0
15 / 2 = 7 R 1
7 / 2 = 3 R 1
3 / 2 = 1 R 1
1 / 2 = 0 R 1
بنابراین، عدد 123 در مبنای 2 برابر با 11010111 است.
تبدیل مبنای 2 به 10
برای تبدیل یک عدد باینری به دهدهی، می توانید از روش زیر استفاده کنید:
- اعداد باینری را از چپ به راست در نظر بگیرید.
- هر رقم باینری را در توان 2 قرار دهید که در آن قرار دارد.
- حاصل را با هم جمع کنید.
به عنوان مثال، برای تبدیل عدد باینری 11010111 به دهدهی، مراحل زیر را انجام می دهیم:
1 * 2^7 + 1 * 2^6 + 0 * 2^5 + 1 * 2^4 + 0 * 2^3 + 1 * 2^2 + 1 * 2^1 + 1 * 2^0 = 123
بنابراین، عدد 11010111 در مبنای 10 برابر با 123 است.
اینها فقط دو روش برای تبدیل مبنا هستند. روش های دیگری نیز وجود دارد که می توانید از آنها استفاده کنید.
مراحل تبدیل مبنا 16 به 8 و بلعکس
تبدیل مبنای 16 به 8
برای تبدیل یک عدد هگزادسیمال به اکتال، می توانید از روش زیر استفاده کنید:
- هر رقم هگزادسیمال را به صورت دو رقم دهدهی در نظر بگیرید.
- اعداد دهدهی را از چپ به راست در نظر بگیرید.
- هر رقم دهدهی را در توان 8 قرار دهید که در آن قرار دارد.
- حاصل را با هم جمع کنید.
به عنوان مثال، برای تبدیل عدد هگزادسیمال 7B به اکتال، مراحل زیر را انجام می دهیم:
7 * 8^1 + B * 8^0 = 56 + 11 = 67
بنابراین، عدد 7B در مبنای 8 برابر با 67 است.
تبدیل مبنای 8 به 16
برای تبدیل یک عدد اکتال به هگزادسیمال، می توانید از روش زیر استفاده کنید:
- عدد اکتال را به صورت تقسیم بر 16 ادامه دهید تا به عددی کمتر از 16 برسید.
- باقیمانده هر تقسیم را به عنوان یک رقم هگزادسیمال در سمت راست قرار دهید.
- اعداد هگزادسیمال را از راست به چپ بخوانید.
به عنوان مثال، برای تبدیل عدد اکتال 67 به هگزادسیمال، مراحل زیر را انجام می دهیم:
67 / 16 = 4 R 3
4 / 16 = 0 R 4
بنابراین، عدد 67 در مبنای 16 برابر با 43 است.
اینها فقط دو روش برای تبدیل مبنا هستند. روش های دیگری نیز وجود دارد که می توانید از آنها استفاده کنید.
آموزش 4 عمل اصلی در مبنا 2 و 16
جمع
جمع در مبنای 2 و 16 مشابه جمع در مبنای 10 است. برای انجام جمع در مبنای 2، ابتدا باید دو عدد را به صورت بیت به بیت با هم جمع کنید. سپس، اگر مجموع دو بیت 0 یا 1 باشد، آن بیت را به عنوان نتیجه جمع در نظر بگیرید. اگر مجموع دو بیت 2 باشد، آن بیت را 0 در نظر بگیرید و یک بیت به سمت راست اضافه کنید.
به عنوان مثال، برای جمع دو عدد باینری 1011 و 1100، مراحل زیر را انجام می دهیم:
1011
+ 1100
----------
10011
در این مثال، مجموع دو بیت اول 0 است، بنابراین بیت اول نتیجه جمع 0 است. مجموع دو بیت دوم 2 است، بنابراین بیت دوم نتیجه جمع 0 است و یک بیت به سمت راست اضافه می کنیم. مجموع دو بیت سوم 2 است، بنابراین بیت سوم نتیجه جمع 0 است و یک بیت به سمت راست اضافه می کنیم. مجموع دو بیت چهارم 2 است، بنابراین بیت چهارم نتیجه جمع 0 است و یک بیت به سمت راست اضافه می کنیم.
بنابراین، نتیجه جمع دو عدد باینری 1011 و 1100 برابر با 10011 است.
برای انجام جمع در مبنای 16، ابتدا باید دو عدد را به صورت رقم به رقم با هم جمع کنید. سپس، اگر مجموع دو رقم 0 تا 9 باشد، آن رقم را به عنوان نتیجه جمع در نظر بگیرید. اگر مجموع دو رقم 10 تا 15 باشد، آن رقم را 10 در نظر بگیرید و یک رقم به سمت راست اضافه کنید.
به عنوان مثال، برای جمع دو عدد هگزادسیمال 7B و 1A، مراحل زیر را انجام می دهیم:
7B
+ 1A
----------
95
در این مثال، مجموع دو رقم اول 12 است، بنابراین رقم اول نتیجه جمع 9 است و یک رقم به سمت راست اضافه می کنیم. مجموع دو رقم دوم 11 است، بنابراین رقم دوم نتیجه جمع A است.
بنابراین، نتیجه جمع دو عدد هگزادسیمال 7B و 1A برابر با 95 است.
تفریق
تفریق در مبنای 2 و 16 مشابه تفریق در مبنای 10 است. برای انجام تفریق در مبنای 2، ابتدا باید دو عدد را به صورت بیت به بیت از هم کم کنید. سپس، اگر اختلاف دو بیت 0 یا 1 باشد، آن بیت را به عنوان نتیجه تفریق در نظر بگیرید. اگر اختلاف دو بیت منفی باشد، آن بیت را 1 در نظر بگیرید و یک بیت قرض بگیرید از بیت سمت راست تر.
به عنوان مثال، برای تفریق دو عدد باینری 1011 و 1100، مراحل زیر را انجام می دهیم:
1011
- 1100
----------
0111
در این مثال، اختلاف دو بیت اول 1 است، بنابراین بیت اول نتیجه تفریق 1 است. اختلاف دو بیت دوم 0 است، بنابراین بیت دوم نتیجه تفریق 0 است. اختلاف دو بیت سوم 1 است، بنابراین بیت سوم نتیجه تفریق 1 است و یک بیت قرض می گیریم از بیت سمت راست تر. اختلاف دو بیت چهارم 1 است، بنابراین بیت چهارم نتیجه تفریق 1 است و یک بیت قرض می گیریم از بیت سمت راست تر.
بنابراین، نتیجه تفریق دو عدد باینری 1011 و 1100 برابر با 0111 است.
برای انجام تفریق در مبنای 16، ابتدا باید دو عدد را به صورت رقم به رقم از هم کم کنید. سپس، اگر اختلاف دو رقم 0 تا 9 باشد، آن رقم را به عنوان نتیجه تفریق در نظر بگیرید. اگر اختلاف دو رقم 10 تا 15 باشد، آن رقم را 10 در نظر بگیرید و یک رقم قرض بگیرید از رقم سمت راست تر.
به عنوان مثال، برای تفریق دو عدد هگزادسیمال 7B و 1A، مراحل زیر را انجام می دهیم:
7B
- 1A
----------
67
در این مثال، اختلاف دو رقم اول 6 است، بنابراین رقم اول نتیجه تفریق 6 است. اختلاف دو رقم دوم 0 است، بنابراین رقم دوم نتیجه تفریق 0 است
مفهوم متمم گیری در مدار منطقی
متمم گیری (complementation) در مدار منطقی، فرآیند تبدیل یک عدد منطقی به متمم آن است. متمم یک عدد منطقی، عددی است که با تغییر تمام بیت های آن به بیت های مخالف خود، حاصل می شود.
در مدار منطقی، متمم گیری معمولاً برای انجام عملیات منطقی مانند جمع، تفریق، و ضرب استفاده می شود.
انواع متمم گیری
دو نوع متمم گیری در مدار منطقی وجود دارد:
- متمم اول (one’s complement): در متمم اول، تمام بیت های یک عدد منطقی به بیت های مخالف خود تغییر می کنند.
- متمم دوم (two’s complement): در متمم دوم، تمام بیت های یک عدد منطقی به بیت های مخالف خود تغییر می کنند و سپس یک بیت به سمت چپ اضافه می شود.
متمم اول
متمم اول ساده ترین نوع متمم گیری است. در متمم اول، تمام بیت های یک عدد منطقی به بیت های مخالف خود تغییر می کنند. برای مثال، متمم اول عدد 1101 در مبنای 2 برابر با 0010 است.
متمم دوم
متمم دوم پیچیده تر از متمم اول است، اما مزایای بیشتری نیز دارد. در متمم دوم، تمام بیت های یک عدد منطقی به بیت های مخالف خود تغییر می کنند و سپس یک بیت به سمت چپ اضافه می شود. برای مثال، متمم دوم عدد 1101 در مبنای 2 برابر با 1011 است.
مزایا متمم دوم
مزایا متمم دوم عبارتند از:
- ساده تر بودن عملیات جمع: در متمم دوم، جمع دو عدد منطقی با جمع دو متمم آن ها برابر است.
- امکان نمایش اعداد منفی: متمم دوم می تواند برای نمایش اعداد منفی استفاده شود.
کاربرد متمم گیری
متمم گیری در مدار منطقی کاربردهای زیادی دارد. برخی از کاربردهای متمم گیری عبارتند از:
- انجام عملیات منطقی: متمم گیری برای انجام عملیات منطقی مانند جمع، تفریق، و ضرب استفاده می شود.
- نمایش اعداد منفی: متمم دوم می تواند برای نمایش اعداد منفی استفاده شود.
- تخمین زدن اعداد: متمم گیری می تواند برای تخمین زدن اعداد استفاده شود.
متمم R در مدار منطقی
متمم R (R-complement) در مدار منطقی، یک روش برای نمایش اعداد منفی است. در متمم R، یک عدد منفی با افزودن 1 به متمم دوم آن عدد، نمایش داده می شود.
برای مثال، برای نمایش عدد منفی 3 در مبنای 2، ابتدا متمم دوم آن را محاسبه می کنیم:
- متمم دوم 3 = 1110
سپس، 1 را به متمم دوم اضافه می کنیم:
- 1110 + 1 = 1111
بنابراین، عدد منفی 3 در مبنای 2 با عدد 1111 نمایش داده می شود.
مزیت متمم R نسبت به متمم دوم این است که می تواند برای نمایش اعداد منفی با دقت بیشتری استفاده شود.
برای مثال، برای نمایش عدد منفی -10 در مبنای 2، ابتدا متمم دوم آن را محاسبه می کنیم:
- متمم دوم 10 = 1111
سپس، 1 را به متمم دوم اضافه می کنیم:
- 1111 + 1 = 10000
بنابراین، عدد منفی -10 در مبنای 2 با عدد 10000 نمایش داده می شود.
اگر از متمم دوم استفاده می کردیم، عدد منفی -10 برابر با 11111 بود که دقت کمتری دارد.
متمم R در مدارهای منطقی دیجیتال کاربردهای زیادی دارد. یکی از کاربردهای آن در محاسبات است. برای مثال، برای جمع دو عدد باینری، می توان از متمم R استفاده کرد.
برای مثال، برای جمع دو عدد باینری 1101 و 1010، ابتدا متمم دوم هر دو عدد را محاسبه می کنیم:
- متمم دوم 1101 = 1011
- متمم دوم 1010 = 0101
سپس، دو متمم را با هم جمع می کنیم:
- 1011 + 0101 = 1110
در نهایت، 1 را به متمم حاصل اضافه می کنیم تا به نتیجه اصلی برسیم:
- 1110 + 1 = 1111
بنابراین، نتیجه جمع دو عدد باینری 1101 و 1010 برابر با 1111 است.
متمم R-1 در مدار منطقی
متمم R-1 (R-1 complement) در مدار منطقی، یک روش برای نمایش اعداد منفی است. در متمم R-1، یک عدد منفی با افزودن 1 به مکمل اول آن عدد، نمایش داده می شود.
برای مثال، برای نمایش عدد منفی 3 در مبنای 2، ابتدا مکمل اول آن را محاسبه می کنیم:
- مکمل اول 3 = 0011
سپس، 1 را به مکمل اول اضافه می کنیم:
- 0011 + 1 = 0100
بنابراین، عدد منفی 3 در مبنای 2 با عدد 0100 نمایش داده می شود.
مزیت متمم R-1 نسبت به متمم اول این است که می تواند برای نمایش اعداد منفی با دقت بیشتری استفاده شود.
برای مثال، برای نمایش عدد منفی -10 در مبنای 2، ابتدا مکمل اول آن را محاسبه می کنیم:
- مکمل اول 10 = 0111
سپس، 1 را به مکمل اول اضافه می کنیم:
- 0111 + 1 = 1000
بنابراین، عدد منفی -10 در مبنای 2 با عدد 1000 نمایش داده می شود.
اگر از مکمل اول استفاده می کردیم، عدد منفی -10 برابر با 0110 بود که دقت کمتری دارد.
متمم R-1 در مدارهای منطقی دیجیتال کاربردهای زیادی دارد. یکی از کاربردهای آن در محاسبات است. برای مثال، برای جمع دو عدد باینری، می توان از متمم R-1 استفاده کرد.
برای مثال، برای جمع دو عدد باینری 1101 و 1010، ابتدا مکمل اول هر دو عدد را محاسبه می کنیم:
- مکمل اول 1101 = 0010
- مکمل اول 1010 = 0101
سپس، دو مکمل را با هم جمع می کنیم:
- 0010 + 0101 = 0111
در نهایت، 1 را به متمم حاصل اضافه می کنیم تا به نتیجه اصلی برسیم:
- 0111 + 1 = 1000
بنابراین، نتیجه جمع دو عدد باینری 1101 و 1010 برابر با 1000 است.
تفاوت متمم R و متمم R-1 این است که متمم R از متمم دوم استفاده می کند، در حالی که متمم R-1 از مکمل اول استفاده می کند.
تفریق اعداد به روش متمم در مدار منطقی
تفریق اعداد به روش متمم در مدار منطقی، یک روش ساده و کارآمد برای انجام تفریق دو عدد است. در این روش، ابتدا دو عدد را به متمم دوم خود تبدیل می کنیم. سپس، دو متمم را با هم جمع می کنیم. در نهایت، یک بیت به سمت چپ اضافه می کنیم تا به نتیجه اصلی برسیم.
برای مثال، برای تفریق دو عدد باینری 1101 و 1010، ابتدا متمم دوم هر دو عدد را محاسبه می کنیم:
- متمم دوم 1101 = 1011
- متمم دوم 1010 = 0101
سپس، دو متمم را با هم جمع می کنیم:
- 1011 + 0101 = 1110
در نهایت، یک بیت به سمت چپ اضافه می کنیم تا به نتیجه اصلی برسیم:
- 1110 >> 1 = 1101
بنابراین، نتیجه تفریق دو عدد باینری 1101 و 1010 برابر با 1101 است.
مراحل تفریق اعداد به روش متمم در مدار منطقی
مراحل تفریق اعداد به روش متمم در مدار منطقی به شرح زیر است:
- تبدیل اعداد به متمم دوم
در این مرحله، هر دو عدد را به متمم دوم خود تبدیل می کنیم.
- جمع متمم ها
در این مرحله، دو متمم را با هم جمع می کنیم.
- اضافه کردن یک بیت به سمت چپ
در این مرحله، یک بیت به سمت چپ اضافه می کنیم تا به نتیجه اصلی برسیم.
کد های وزن دار و بدون وزن در مدار منطقی
کد های وزن دار و بدون وزن در مدار منطقی
در مدارهای منطقی، کدها برای نمایش اعداد و داده های دیگر استفاده می شوند. کدهای وزن دار و بدون وزن دو نوع اصلی کد هستند که در مدارهای منطقی استفاده می شوند.
کد های وزن دار
در کدهای وزن دار، هر بیت کد با یک وزن خاص مرتبط است. برای مثال، در کد وزن دار 8421، بیت سمت چپ ترین بیشترین وزن را دارد و بیت سمت راست ترین کمترین وزن را دارد.
برای مثال، عدد 12 در کد وزن دار 8421 با کد 00100010 نمایش داده می شود. در این کد، بیت سمت چپ ترین (0) وزن 8 دارد، بیت دومین سمت چپ ترین (0) وزن 4 دارد، بیت سومین سمت چپ ترین (1) وزن 2 دارد، و بیت سمت راست ترین (0) وزن 1 دارد. بنابراین، مجموع وزن ها برابر با 12 است.
کدهای وزن دار برای عملیات منطقی مانند جمع، تفریق، و ضرب مناسب هستند. زیرا، می توان از وزن بیت ها برای محاسبه نتیجه عملیات استفاده کرد.
کد های بدون وزن
در کدهای بدون وزن، هر بیت کد یک مقدار ثابت دارد. برای مثال، در کد بدون وزن BCD، هر بیت کد می تواند یکی از مقادیر 0، 1، 2، 3، 4، 5، 6، 7، 8، یا 9 را داشته باشد.
برای مثال، عدد 12 در کد بدون وزن BCD با کد 00100010 نمایش داده می شود. در این کد، هر بیت کد مقدار ثابتی دارد. بیت سمت چپ ترین (0) مقدار 0 دارد، بیت دومین سمت چپ ترین (0) مقدار 0 دارد، بیت سومین سمت چپ ترین (1) مقدار 1 دارد، و بیت سمت راست ترین (0) مقدار 0 دارد. بنابراین، مجموع بیت ها برابر با 12 است.
کدهای بدون وزن برای نمایش اعداد منفی مناسب هستند. زیرا، می توان از یکی از بیت های کد برای نمایش علامت عدد استفاده کرد.
کد BCD در مدار منطقی چیست ؟
کد BCD (Binary-Coded Decimal) یا دهدهی کد شده به باینری، یک کد بدون وزن است که برای نمایش اعداد دهدهی در مدارهای منطقی استفاده می شود. کد BCD از چهار بیت استفاده می کند که هر کدام می توانند یکی از مقادیر 0، 1، 2، 3، 4، 5، 6، 7، 8، یا 9 را داشته باشند.
در کد BCD، هر بیت کد یک رقم دهدهی را نشان می دهد. به عنوان مثال، کد 00100010 در کد BCD برابر با عدد دهدهی 12 است. در این کد، بیت سمت چپ ترین (0) مقدار 0 دارد، بیت دومین سمت چپ ترین (0) مقدار 0 دارد، بیت سومین سمت چپ ترین (1) مقدار 1 دارد، و بیت سمت راست ترین (0) مقدار 0 دارد. بنابراین، مجموع بیت ها برابر با 12 است.
کد BCD برای نمایش اعداد دهدهی در مدارهای منطقی مناسب است. زیرا، می توان از آن برای انجام عملیات منطقی مانند جمع، تفریق، و ضرب استفاده کرد. همچنین، کد BCD می تواند اعداد منفی را مستقیماً نمایش دهد.
برای نمایش اعداد منفی در کد BCD، از بیت سمت چپ ترین برای نمایش علامت عدد استفاده می شود. اگر این بیت مقدار 0 داشته باشد، عدد مثبت است. اگر این بیت مقدار 1 داشته باشد، عدد منفی است.
به عنوان مثال، عدد -12 در کد BCD با کد 10100010 نمایش داده می شود. در این کد، بیت سمت چپ ترین (1) مقدار 1 دارد که نشان دهنده عدد منفی است. سایر بیت ها نیز همان مقداری را دارند که در کد 12 استفاده می شود.
کد GRAY در مدار منطقی چیست ؟
کد GRAY (Gray code) یک کد بدون وزن است که برای نمایش اعداد در مدارهای منطقی استفاده می شود. کد GRAY از ویژگی مهمی برخوردار است که در آن فقط یک بیت در هر دو کد متوالی متفاوت است. این ویژگی باعث می شود که کد GRAY برای انتقال اطلاعات دیجیتال در مدارهای منطقی مناسب باشد.
برای ساخت کد GRAY، ابتدا یک کد وزن دار از اعداد ایجاد می کنیم. سپس، هر بیت را به بیت بعدی تبدیل می کنیم. برای تبدیل یک بیت، اگر مقدار بیت برابر با 0 باشد، مقدار آن را تغییر نمی دهیم. اگر مقدار بیت برابر با 1 باشد، مقدار آن را به 0 تغییر می دهیم.
به عنوان مثال، کد وزن دار برای اعداد 0 تا 7 به صورت زیر است:
0: 0000
1: 0001
2: 0010
3: 0011
4: 0100
5: 0101
6: 0110
7: 0111
با استفاده از این کد وزن دار، کد GRAY برای اعداد 0 تا 7 به صورت زیر است:
0: 0000
1: 0001
2: 0011
3: 0110
4: 0101
5: 1100
6: 1011
7: 1000
همانطور که مشاهده می کنید، فقط یک بیت در هر دو کد متوالی متفاوت است. این ویژگی باعث می شود که کد GRAY برای انتقال اطلاعات دیجیتال در مدارهای منطقی مناسب باشد.
کد افزایش 3 در مدار منطقی چیست ؟
کد افزایش 3 در مدار منطقی، یک روش ساده برای افزایش یک عدد باینری به مقدار 3 است. در این روش، ابتدا یک بیت به سمت راست اضافه می کنیم. سپس، اگر بیت سمت چپ ترین مقدار 1 داشته باشد، بیت سمت راست ترین را با 0 جایگزین می کنیم.
برای مثال، برای افزایش عدد باینری 1001 به مقدار 3، ابتدا یک بیت به سمت راست اضافه می کنیم:
1001
سپس، بیت سمت چپ ترین را بررسی می کنیم. این بیت مقدار 1 دارد. بنابراین، بیت سمت راست ترین را با 0 جایگزین می کنیم:
1010
بنابراین، نتیجه افزایش عدد باینری 1001 به مقدار 3 برابر با 1010 است.
مدار منطقی کد افزایش 3
مدار منطقی کد افزایش 3، از یک گیت AND، یک گیت OR، و یک گیت NOT تشکیل شده است.
گیت AND برای اضافه کردن یک بیت به سمت راست استفاده می شود. گیت OR برای بررسی بیت سمت چپ ترین استفاده می شود. گیت NOT برای جایگزینی بیت سمت راست ترین با 0 استفاده می شود.
نمودار مدار منطقی کد افزایش 3
A
/ | \
/ | \
A' B C'
در این مدار، A ورودی عدد باینری است. B خروجی مدار است. C’ خروجی گیت NOT است.
عملکرد مدار به صورت زیر است:
- خروجی گیت AND برابر با A’B است.
- اگر A’B برابر با 1 باشد، خروجی گیت OR برابر با 1 است.
- اگر خروجی گیت OR برابر با 1 باشد، C’ برابر با 0 است.
- اگر C’ برابر با 0 باشد، B برابر با A + 1 است.
بنابراین، خروجی مدار برابر با A + 1 است.
فصل دو مدار منطقی
جبر بول چیست ؟
جبر بول (Boolean algebra)، یک سیستم جبری است که برای توصیف و محاسبه منطق بولی استفاده می شود. منطق بولی، یک سیستم منطقی است که فقط دو مقدار درست (true) و غلط (false) را در نظر می گیرد.
جبر بول، از دو عملگر اصلی تشکیل شده است:
- عملگر AND که منطق AND را نشان می دهد.
- عملگر OR که منطق OR را نشان می دهد.
علاوه بر این دو عملگر اصلی، دو عملگر فرعی نیز در جبر بول وجود دارد:
- عملگر NOT که منطق NOT را نشان می دهد.
- عملگر XOR که منطق XOR را نشان می دهد.
عملگر AND
عملگر AND، دو مقدار بولی را با هم جمع می کند. اگر هر دو مقدار درست باشند، نتیجه درست است. در غیر این صورت، نتیجه غلط است.
به عنوان مثال، اگر a برابر با true و b برابر با true باشد، a AND b برابر با true است.
a = true
b = true
a AND b = true
اگر a برابر با true و b برابر با false باشد، a AND b برابر با false است.
a = true
b = false
a AND b = false
عملگر OR، دو مقدار بولی را با هم جمع می کند. اگر یکی از دو مقدار درست باشد، نتیجه درست است. در غیر این صورت، نتیجه غلط است.
به عنوان مثال، اگر a برابر با true و b برابر با true باشد، a OR b برابر با true است.
a = true
b = true
a OR b = true
اگر a برابر با false و b برابر با true باشد، a OR b برابر با true است.
a = false
b = true
a OR b = true
عملگر NOT
عملگر NOT، یک مقدار بولی را معکوس می کند. اگر مقدار درست باشد، نتیجه غلط است. در غیر این صورت، نتیجه درست است.
به عنوان مثال، اگر a برابر با true باشد، NOT a برابر با false است.
a = true
NOT a = false
اگر a برابر با false باشد، NOT a برابر با true است.
a = false
NOT a = true
عملگر XOR
عملگر XOR، دو مقدار بولی را با هم جمع می کند. اگر دو مقدار متفاوت باشند، نتیجه درست است. در غیر این صورت، نتیجه غلط است.
به عنوان مثال، اگر a برابر با true و b برابر با true باشد، a XOR b برابر با false است.
a = true
b = true
a XOR b = false
اگر a برابر با true و b برابر با false باشد، a XOR b برابر با true است.
a = true
b = false
a XOR b = true
اگر a برابر با false و b برابر با true باشد، a XOR b برابر با true است.
a = false
b = true
a XOR b = true
اگر a برابر با false و b برابر با false باشد، a XOR b برابر با false است.
a = false
b = false
a XOR b = false
کاربردهای جبر بول
جبر بول، کاربردهای زیادی در علوم کامپیوتر، مهندسی برق، و سایر زمینه ها دارد. برخی از کاربردهای جبر بول عبارتند از:
- توصیف و محاسبه منطق بولی
- طراحی مدارهای منطقی
- رمزنگاری
- پردازش زبان طبیعی
- یادگیری ماشین
جبر بول، یک ابزار قدرتمند برای توصیف و محاسبه منطق بولی است. این ابزار، کاربردهای زیادی در علوم کامپیوتر، مهندسی برق، و سایر زمینه ها دارد.
گیت های مدار منطقی
گیت OR
گیت OR، یک گیت منطقی دو ورودی و یک خروجی است. خروجی گیت OR برابر با 1 است اگر حداقل یکی از ورودی ها برابر با 1 باشد. در غیر این صورت، خروجی گیت OR برابر با 0 است.
نمودار نماد گیت OR
A
B
|
|
Y
جدول حقیقت گیت OR
A | B | Y |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 1 |
عملکرد گیت OR
عملکرد گیت OR را می توان به صورت زیر بیان کرد:
Y = A + B
گیت AND
گیت AND، یک گیت منطقی دو ورودی و یک خروجی است. خروجی گیت AND برابر با 1 است اگر هر دو ورودی برابر با 1 باشند. در غیر این صورت، خروجی گیت AND برابر با 0 است.
نمودار نماد گیت AND
A
B
|
|
Y
جدول حقیقت گیت AND
A | B | Y |
---|---|---|
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
عملکرد گیت AND
عملکرد گیت AND را می توان به صورت زیر بیان کرد:
Y = A * B
گیت NOT
گیت NOT، یک گیت منطقی تک ورودی و تک خروجی است. خروجی گیت NOT برابر با عکس ورودی است. به عبارت دیگر، اگر ورودی برابر با 1 باشد، خروجی برابر با 0 است. در غیر این صورت، خروجی برابر با 1 است.
نمودار نماد گیت NOT
A
|
Y
جدول حقیقت گیت NOT
A | Y |
---|---|
0 | 1 |
1 | 0 |
عملکرد گیت NOT
عملکرد گیت NOT را می توان به صورت زیر بیان کرد:
Y = !A
گیت NAND
گیت NAND، یک گیت منطقی دو ورودی و یک خروجی است. خروجی گیت NAND برابر با 1 است اگر هر دو ورودی برابر با 0 باشند. در غیر این صورت، خروجی گیت NAND برابر با 0 است.
نمودار نماد گیت NAND
A
B
|
|
Y
جدول حقیقت گیت NAND
A | B | Y |
---|---|---|
0 | 0 | 1 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
عملکرد گیت NAND
عملکرد گیت NAND را می توان به صورت زیر بیان کرد:
Y = (A * B)'
که در آن:
- Y خروجی گیت NAND است.
- A و B ورودی های گیت NAND هستند.
کاربردهای گیت NAND
گیت NAND کاربردهای زیادی در مدارهای منطقی دارد. برخی از کاربردهای گیت NAND عبارتند از:
- ترکیب دو یا چند سیگنال ورودی
- انجام عملیات منطقی NAND
- کنترل دستگاه ها و فرآیندها
در اینجا چند نمونه از کاربردهای گیت NAND آورده شده است:
- برای اطمینان از اینکه یک لامپ فقط در صورتی روشن می شود که هر دو کلید بسته باشند، می توان از یک گیت NAND استفاده کرد.
- برای تشخیص اینکه یک عدد صحیح زوج است یا فرد می توان از یک گیت NAND استفاده کرد. اگر مجموع دو رقم آخر یک عدد برابر با 0 باشد، عدد صحیح زوج است. در غیر این صورت، عدد صحیح فرد است.
- برای کنترل یک موتور می توان از یک گیت NAND استفاده کرد. اگر هر دو ورودی های گیت NAND برابر با 0 باشند، موتور روشن می شود. در غیر این صورت، موتور خاموش می شود.
گیت NAND، یک گیت منطقی ساده و در عین حال کاربردی است که کاربردهای زیادی در مدارهای منطقی دارد.
تفاوت گیت NAND و NOT
گیت NAND و گیت NOT، دو گیت منطقی هستند که شباهت هایی به یکدیگر دارند. اما، تفاوت های مهمی نیز بین این دو گیت وجود دارد.
شباهت های گیت NAND و NOT:
- هر دو گیت، دو ورودی و یک خروجی دارند.
- هر دو گیت، عملیات منطقی را انجام می دهند.
تفاوت های گیت NAND و NOT:
- عملکرد گیت NAND، عکس عملکرد گیت NOT است.
- گیت NAND، یک گیت منطقی AND ترکیبی با یک گیت NOT است.
جدول مقایسه گیت NAND و NOT
ویژگی | گیت NAND | گیت NOT |
---|---|---|
عملکرد | اگر هر دو ورودی برابر با 0 باشند، خروجی برابر با 1 است. در غیر این صورت، خروجی برابر با 0 است. | اگر ورودی برابر با 1 باشد، خروجی برابر با 0 است. در غیر این صورت، خروجی برابر با 1 است. |
رابطه با گیت NOT | عکس عملکرد گیت NOT است. | یک گیت منطقی AND ترکیبی با یک گیت NOT است. |
با استفاده از گیت NAND، می توان گیت NOT را پیاده سازی کرد. برای این کار، کافی است ورودی گیت NAND را به یک مقدار ثابت 1 وصل کنیم. در این صورت، اگر ورودی دیگر گیت NAND برابر با 0 باشد، خروجی گیت NAND برابر با 1 خواهد بود. در غیر این صورت، خروجی گیت NAND برابر با 0 خواهد بود.
گیت NOR
گیت NOR، یک گیت منطقی دو ورودی و یک خروجی است. خروجی گیت NOR برابر با 1 است اگر هیچ کدام از ورودی ها برابر با 1 نباشند. در غیر این صورت، خروجی گیت NOR برابر با 0 است.
نمودار نماد گیت NOR
A
B
|
|
Y
جدول حقیقت گیت NOR
A | B | Y |
---|---|---|
0 | 0 | 1 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 0 |
عملکرد گیت NOR
عملکرد گیت NOR را می توان به صورت زیر بیان کرد:
Y = (A + B)'
که در آن:
- Y خروجی گیت NOR است.
- A و B ورودی های گیت NOR هستند.
کاربردهای گیت NOR
گیت NOR کاربردهای زیادی در مدارهای منطقی دارد. برخی از کاربردهای گیت NOR عبارتند از:
- ترکیب دو یا چند سیگنال ورودی
- انجام عملیات منطقی NOR
- کنترل دستگاه ها و فرآیندها
در اینجا چند نمونه از کاربردهای گیت NOR آورده شده است:
- برای اطمینان از اینکه یک لامپ فقط در صورتی روشن می شود که هیچ کدام از کلیدها بسته نباشند، می توان از یک گیت NOR استفاده کرد.
- برای تشخیص اینکه یک عدد صحیح زوج است یا فرد می توان از یک گیت NOR استفاده کرد. اگر مجموع دو رقم آخر یک عدد برابر با 0 باشد، عدد صحیح زوج است. در غیر این صورت، عدد صحیح فرد است.
- برای کنترل یک موتور می توان از یک گیت NOR استفاده کرد. اگر هیچ کدام از ورودی های گیت NOR برابر با 1 نباشند، موتور روشن می شود. در غیر این صورت، موتور خاموش می شود.
گیت NOR، یک گیت منطقی ساده و در عین حال کاربردی است که کاربردهای زیادی در مدارهای منطقی دارد.
تفاوت گیت NOR و OR
گیت NOR و گیت OR، دو گیت منطقی هستند که شباهت هایی به یکدیگر دارند. اما، تفاوت های مهمی نیز بین این دو گیت وجود دارد.
شباهت های گیت NOR و OR:
- هر دو گیت، دو ورودی و یک خروجی دارند.
- هر دو گیت، عملیات منطقی را انجام می دهند.
تفاوت های گیت NOR و OR:
- عملکرد گیت NOR، عکس عملکرد گیت OR است.
- گیت NOR، یک گیت منطقی OR ترکیبی با یک گیت NOT است.
جدول مقایسه گیت NOR و OR
ویژگی | گیت NOR | گیت OR |
---|---|---|
عملکرد | اگر هیچ کدام از ورودی ها برابر با 1 نباشند، خروجی برابر با 1 است. در غیر این صورت، خروجی برابر با 0 است. | اگر حداقل یکی از ورودی ها برابر با 1 باشد، خروجی برابر با 1 است. در غیر این صورت، خروجی برابر با 0 است. |
رابطه با گیت OR | عکس عملکرد گیت OR است. | یک گیت منطقی OR ترکیبی با یک گیت NOT است. |
با استفاده از گیت NOR، می توان گیت OR را پیاده سازی کرد. برای این کار، کافی است ورودی گیت NOR را به یک مقدار ثابت 0 وصل کنیم. در این صورت، اگر ورودی دیگر گیت NOR برابر با 0 باشد، خروجی گیت NOR برابر با 1 خواهد بود. در غیر این صورت، خروجی گیت NOR برابر با 0 خواهد بود.
گیت XOR
گیت XOR، یک گیت منطقی دو ورودی و یک خروجی است. خروجی گیت XOR برابر با 1 است اگر دو ورودی متفاوت باشند. در غیر این صورت، خروجی گیت XOR برابر با 0 است.
نمودار نماد گیت XOR
A
B
|
|
Y
جدول حقیقت گیت XOR
A | B | Y |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
عملکرد گیت XOR
عملکرد گیت XOR را می توان به صورت زیر بیان کرد:
Y = A ^ B
که در آن:
- Y خروجی گیت XOR است.
- A و B ورودی های گیت XOR هستند.
کاربردهای گیت XOR
گیت XOR کاربردهای زیادی در مدارهای منطقی دارد. برخی از کاربردهای گیت XOR عبارتند از:
- ترکیب دو یا چند سیگنال ورودی
- انجام عملیات منطقی XOR
- کنترل دستگاه ها و فرآیندها
در اینجا چند نمونه از کاربردهای گیت XOR آورده شده است:
- برای اطمینان از اینکه یک لامپ فقط در صورتی روشن می شود که یکی از کلیدها بسته باشد، می توان از یک گیت XOR استفاده کرد.
- برای تشخیص اینکه یک عدد صحیح زوج است یا فرد می توان از یک گیت XOR استفاده کرد. اگر مجموع دو رقم آخر یک عدد برابر با 1 باشد، عدد صحیح زوج است. در غیر این صورت، عدد صحیح فرد است.
- برای کنترل یک موتور می توان از یک گیت XOR استفاده کرد. اگر یکی از ورودی های گیت XOR برابر با 1 باشد، موتور روشن می شود. در غیر این صورت، موتور خاموش می شود.
گیت XOR، یک گیت منطقی ساده و در عین حال کاربردی است که کاربردهای زیادی در مدارهای منطقی دارد.
تفاوت گیت XOR و OR
گیت XOR و گیت OR، دو گیت منطقی هستند که شباهت هایی به یکدیگر دارند. اما، تفاوت های مهمی نیز بین این دو گیت وجود دارد.
شباهت های گیت XOR و OR:
- هر دو گیت، دو ورودی و یک خروجی دارند.
- هر دو گیت، عملیات منطقی را انجام می دهند.
تفاوت های گیت XOR و OR:
- عملکرد گیت XOR، عکس عملکرد گیت OR نیست.
- گیت XOR، یک گیت منطقی OR ترکیبی با یک گیت NOT نیست.
جدول مقایسه گیت XOR و OR
ویژگی | گیت XOR | گیت OR |
---|---|---|
عملکرد | اگر دو ورودی متفاوت باشند، خروجی برابر با 1 است. در غیر این صورت، خروجی برابر با 0 است. | اگر حداقل یکی از ورودی ها برابر با 1 باشد، خروجی برابر با 1 است. در غیر این صورت، خروجی برابر با 0 است. |
رابطه با گیت OR | عکس عملکرد گیت OR نیست. | یک گیت منطقی OR ترکیبی با یک گیت NOT نیست. |
با استفاده از گیت های منطقی دیگر، می توان گیت XOR را پیاده سازی کرد. برای این کار، می توان از یک گیت NOT و یک گیت AND استفاده کرد.
گیت XNOR
گیت XNOR، یک گیت منطقی دو ورودی و یک خروجی است. خروجی گیت XNOR برابر با 1 است اگر دو ورودی برابر باشند. در غیر این صورت، خروجی گیت XNOR برابر با 0 است.
نمودار نماد گیت XNOR
A
B
|
|
Y
جدول حقیقت گیت XNOR
A | B | Y |
---|---|---|
0 | 0 | 1 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
عملکرد گیت XNOR
عملکرد گیت XNOR را می توان به صورت زیر بیان کرد:
Y = (A ^ B)'
که در آن:
- Y خروجی گیت XNOR است.
- A و B ورودی های گیت XNOR هستند.
کاربردهای گیت XNOR
گیت XNOR کاربردهای زیادی در مدارهای منطقی دارد. برخی از کاربردهای گیت XNOR عبارتند از:
- ترکیب دو یا چند سیگنال ورودی
- انجام عملیات منطقی XNOR
- کنترل دستگاه ها و فرآیندها
در اینجا چند نمونه از کاربردهای گیت XNOR آورده شده است:
- برای اطمینان از اینکه یک لامپ فقط در صورتی روشن می شود که هر دو کلید بسته باشند، می توان از یک گیت XNOR استفاده کرد.
- برای تشخیص اینکه یک عدد صحیح زوج است یا فرد می توان از یک گیت XNOR استفاده کرد. اگر مجموع دو رقم آخر یک عدد برابر با 0 باشد، عدد صحیح زوج است. در غیر این صورت، عدد صحیح فرد است.
- برای کنترل یک موتور می توان از یک گیت XNOR استفاده کرد. اگر هر دو ورودی های گیت XNOR برابر باشند، موتور روشن می شود. در غیر این صورت، موتور خاموش می شود.
گیت XNOR، یک گیت منطقی ساده و در عین حال کاربردی است که کاربردهای زیادی در مدارهای منطقی دارد.
تفاوت گیت XNOR و XOR
گیت XNOR و گیت XOR، دو گیت منطقی هستند که شباهت هایی به یکدیگر دارند. اما، تفاوت های مهمی نیز بین این دو گیت وجود دارد.
شباهت های گیت XNOR و XOR:
- هر دو گیت، دو ورودی و یک خروجی دارند.
- هر دو گیت، عملیات منطقی را انجام می دهند.
تفاوت های گیت XNOR و XOR:
- عملکرد گیت XNOR، عکس عملکرد گیت XOR است.
- گیت XNOR، یک گیت منطقی XOR ترکیبی با یک گیت NOT است.
جدول مقایسه گیت XNOR و XOR
ویژگی | گیت XNOR | گیت XOR |
---|---|---|
عملکرد | اگر دو ورودی برابر باشند، خروجی برابر با 1 است. در غیر این صورت، خروجی برابر با 0 است. | اگر دو ورودی متفاوت باشند، خروجی برابر با 1 است. در غیر این صورت، خروجی برابر با 0 است. |
رابطه با گیت XOR | عکس عملکرد گیت XOR است. | یک گیت منطقی XOR ترکیبی با یک گیت NOT است. |
با استفاده از گیت های منطقی دیگر، می توان گیت XNOR را پیاده سازی کرد. برای این کار، می توان از دو گیت NOT و یک گیت AND استفاده کرد.
اصول و قوانین جبر بول
اصول جبر بول
جبر بول، یک سیستم ریاضیاتی است که برای توصیف و تجزیه و تحلیل مدارهای منطقی استفاده می شود. این سیستم بر اساس دو مقدار منطقی، 0 و 1، بنا شده است.
قوانین جبر بول
قوانین جبر بول، قوانینی هستند که برای محاسبه عبارات بولی استفاده می شوند. این قوانین عبارتند از:
- قانون جابجایی:
A + B = B + A
- قانون شرکت پذیری:
(A + B) + C = A + (B + C)
- قانون توزیع:
A * (B + C) = AB + AC
- قانون جذب:
A * (A + B) = A
- قانون مکمل:
(A + B)' = A' * B'
کاربرد قوانین جبر بول
قوانین جبر بول برای ساده سازی عبارات بولی استفاده می شوند. این کار می تواند به کاهش پیچیدگی مدارهای منطقی کمک کند.
در اینجا چند نمونه از کاربرد قوانین جبر بول آورده شده است:
- برای ساده سازی عبارت بولی A * B + B * C + A * C می توان از قانون جابجایی استفاده کرد. این عبارت را می توان به صورت A * (B + C) + B * C ساده کرد.
- برای ساده سازی عبارت بولی A * (A + B) * C می توان از قانون جذب استفاده کرد. این عبارت را می توان به صورت A * C ساده کرد.
- برای ساده سازی عبارت بولی (A + B)’ * (A + C)’ می توان از قانون مکمل استفاده کرد. این عبارت را می توان به صورت A’ * B’ * C’ ساده کرد.
ساده کردن توابع جبر بول در مدار منطقی
ساده کردن توابع جبر بول در مدار منطقی، یک فرآیند مهم است که می تواند به کاهش پیچیدگی مدار و صرفه جویی در هزینه ها کمک کند.
برای ساده کردن توابع جبر بول در مدار منطقی، می توان از قوانین جبر بول استفاده کرد. این قوانین عبارتند از:
- قانون جابجایی:
A + B = B + A
- قانون شرکت پذیری:
(A + B) + C = A + (B + C)
- قانون توزیع:
A * (B + C) = AB + AC
- قانون جذب:
A * (A + B) = A
- قانون مکمل:
(A + B)' = A' * B'
علاوه بر قوانین جبر بول، می توان از روش های دیگری نیز برای ساده کردن توابع جبر بول در مدار منطقی استفاده کرد. این روش ها عبارتند از:
- استفاده از جدول حقیقت:
با استفاده از جدول حقیقت، می توان تمام مقادیر ممکن برای یک تابع جبر بول را محاسبه کرد. سپس، می توان از این مقادیر برای ساده سازی تابع استفاده کرد.
- استفاده از ماتریس نمودار:
ماتریس نمودار، یک ابزار گرافیکی برای نمایش توابع جبر بول است. با استفاده از ماتریس نمودار، می توان روابط بین متغیرهای یک تابع را به راحتی مشاهده کرد. این روابط می توانند برای ساده سازی تابع استفاده شوند.
- استفاده از نرم افزارهای تخصصی:
نرم افزارهای تخصصی، ابزارهای قدرتمندی برای ساده سازی توابع جبر بول هستند. این نرم افزارها می توانند از قوانین جبر بول و روش های دیگر برای ساده سازی توابع استفاده کنند.
در اینجا چند نمونه از ساده سازی توابع جبر بول در مدار منطقی آورده شده است:
- ساده سازی عبارت بولی A * B + B * C + A * C با استفاده از قانون جابجایی:
A * B + B * C + A * C = (A + B) * (B + C)
- ساده سازی عبارت بولی A * (A + B) * C با استفاده از قانون جذب:
A * (A + B) * C = A * C
- ساده سازی عبارت بولی (A + B)’ * (A + C)’ با استفاده از قانون مکمل:
(A + B)' * (A + C)' = A' * B' * C'
ساده سازی توابع جبر بول در مدار منطقی، یک مهارت مهم است که می تواند به مهندسان کمک کند تا مدارهای منطقی پیچیده را طراحی و پیاده سازی کنند.
اصل مورگان چیست ؟
اصل مورگان، دو اصل جبر بولی است که برای ساده سازی عبارات بولی استفاده می شوند. این اصول توسط ریاضیدان انگلیسی، پیر مورگان، در سال 1847 ارائه شدند.
اصل مورگان اول
اصل مورگان اول بیان می کند که مکمل یک عبارت AND برابر با OR مکمل های ورودی است.
(A * B)' = A' + B'
به عنوان مثال، مکمل عبارت AND دو متغیر A و B برابر با OR مکمل های متغیرهای A و B است.
(A * B)' = A' + B'
اصل مورگان دوم
اصل مورگان دوم بیان می کند که مکمل یک عبارت OR برابر با AND مکمل های ورودی است.
(A + B)' = A' * B'
به عنوان مثال، مکمل عبارت OR دو متغیر A و B برابر با AND مکمل های متغیرهای A و B است.
(A + B)' = A' * B'
مینترم چیست ؟
مینترم (Minterm)، عبارتی در جبر بولی است که از حداقل تعداد محصول (AND) متغیرهای منطقی تشکیل شده است. مینترم ها برای توصیف توابع منطقی در مدارهای منطقی استفاده می شوند.
به عنوان مثال، مینترم A * B * C برابر است با عبارت منطقی “A و B و C”. این عبارت تنها زمانی مقدار 1 را می گیرد که هر سه متغیر A، B و C مقدار 1 را داشته باشند.
مینترم ها را می توان با استفاده از جدول حقیقت یک تابع منطقی پیدا کرد. برای این کار، باید تمام ترکیبات ممکن از مقادیر ورودی را بررسی کرد و در هر ترکیبی که خروجی تابع برابر با 1 بود، یک مینترم تشکیل داد.
مینترم ها را می توان با استفاده از قوانین جبر بولی ساده کرد. به عنوان مثال، مینترم A * B * C می تواند به صورت مینترم A * B ساده شود، زیرا در تمام ترکیباتی که خروجی تابع برابر با 1 است، متغیر C نیز برابر با 1 است.
مینترم ها، ابزاری قدرتمند برای توصیف و ساده سازی توابع منطقی در مدارهای منطقی هستند.
در اینجا چند نمونه از مینترم ها آورده شده است:
- A * B * C
- A * B’ * C
- A’ * B * C
- A’ * B’ * C’
مینترم ها را می توان به صورت زیر طبقه بندی کرد:
- مینترم های اساسی: مینترم هایی که تنها از یک متغیر منطقی تشکیل شده اند.
- مینترم های ترکیبی: مینترم هایی که از ترکیب دو یا چند مینترم اساسی تشکیل شده اند.
مینترم های اساسی، پایه و اساس مینترم های ترکیبی هستند. مینترم های ترکیبی را می توان با استفاده از قوانین جبر بولی از مینترم های اساسی تشکیل داد.
ماکسترم چیست ؟
ماکسترم (Maxterm)، عبارتی در جبر بولی است که از حداکثر تعداد جمع (OR) متغیرهای منطقی تشکیل شده است. ماکسترم ها برای توصیف توابع منطقی در مدارهای منطقی استفاده می شوند.
به عنوان مثال، ماکسترم A + B + C برابر است با عبارت منطقی “A یا B یا C”. این عبارت تنها زمانی مقدار 0 را می گیرد که هیچ یک از متغیرهای A، B و C مقدار 0 را نداشته باشند.
ماکسترم ها را می توان با استفاده از جدول حقیقت یک تابع منطقی پیدا کرد. برای این کار، باید تمام ترکیبات ممکن از مقادیر ورودی را بررسی کرد و در هر ترکیبی که خروجی تابع برابر با 0 بود، یک ماکسترم تشکیل داد.
ماکسترم ها را می توان با استفاده از قوانین جبر بولی ساده کرد. به عنوان مثال، ماکسترم A + B + C می تواند به صورت ماکسترم A + B ساده شود، زیرا در تمام ترکیباتی که خروجی تابع برابر با 0 است، حداقل یکی از متغیرهای A یا B برابر با 0 است.
ماکسترم ها، ابزاری قدرتمند برای توصیف و ساده سازی توابع منطقی در مدارهای منطقی هستند.
در اینجا چند نمونه از ماکسترم ها آورده شده است:
- A + B + C
- A + B’ + C
- A’ + B + C
- A’ + B’ + C’
ماکسترم ها را می توان به صورت زیر طبقه بندی کرد:
- ماکسترم های اساسی: ماکسترم هایی که تنها از یک متغیر منطقی تشکیل شده اند.
- ماکسترم های ترکیبی: ماکسترم هایی که از ترکیب دو یا چند ماکسترم اساسی تشکیل شده اند.
ماکسترم های اساسی، پایه و اساس ماکسترم های ترکیبی هستند. ماکسترم های ترکیبی را می توان با استفاده از قوانین جبر بولی از ماکسترم های اساسی تشکیل داد.
تفاوت مینترم و ماکسترم
مینترم ها و ماکسترم ها، هر دو عبارت های جبر بولی هستند که برای توصیف توابع منطقی در مدارهای منطقی استفاده می شوند. اما، تفاوت های مهمی بین این دو عبارت وجود دارد.
تفاوت های اصلی مینترم و ماکسترم عبارتند از:
- مینترم ها از حداقل تعداد محصول (AND) متغیرهای منطقی تشکیل شده اند. ماکسترم ها از حداکثر تعداد جمع (OR) متغیرهای منطقی تشکیل شده اند.
- مینترم ها زمانی مقدار 1 را می گیرند که تمام متغیرهای منطقی برابر با 1 باشند. ماکسترم ها زمانی مقدار 0 را می گیرند که حداقل یکی از متغیرهای منطقی برابر با 0 باشد.
در اینجا چند مثال از تفاوت بین مینترم و ماکسترم آورده شده است:
- مینترم A * B * C برابر است با عبارت منطقی “A و B و C”. این عبارت تنها زمانی مقدار 1 را می گیرد که هر سه متغیر A، B و C مقدار 1 را داشته باشند.
- ماکسترم A + B + C برابر است با عبارت منطقی “A یا B یا C”. این عبارت تنها زمانی مقدار 0 را می گیرد که هیچ یک از متغیرهای A، B و C مقدار 0 را نداشته باشند.
مینترم ها و ماکسترم ها، هر دو ابزارهای قدرتمندی برای توصیف و ساده سازی توابع منطقی در مدارهای منطقی هستند. انتخاب نوع عبارت مناسب برای توصیف یک تابع منطقی، به ماهیت تابع بستگی دارد.
فصل سوم مدار منطقی
جدول صحت چیست ؟
جدول صحت یا جدول درستی (Truth table)، جدولی است که در آن درستی یا نادرستی گزارهها درج گردد. منظور از درستی یا صدق در هر گزاره، مطابقت آن با واقع؛ و منظور از نادرستی یا کذب، عدم مطابقت آن با واقع است.
جدول صحت یک تابع منطقی، نشان میدهد که خروجی تابع برای هر ترکیب از مقادیر ورودی چه مقداری خواهد داشت.
در جدول صحت یک تابع منطقی، دو ستون وجود دارد:
- ستون اول، مقادیر ورودی تابع را نشان میدهد.
- ستون دوم، خروجی تابع را برای هر ترکیب از مقادیر ورودی نشان میدهد.
به عنوان مثال، جدول صحت تابع منطقی A * B برابر است با جدول زیر:
A | B | A * B |
---|---|---|
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
در این جدول، A و B متغیرهای منطقی هستند. خروجی تابع A * B برابر با 1 است اگر هر دو متغیر A و B برابر با 1 باشند. در غیر این صورت، خروجی تابع برابر با 0 است.
جدول صحت، ابزاری مهم برای توصیف و تجزیه و تحلیل توابع منطقی است. این جدول میتواند برای ساده سازی توابع منطقی، طراحی مدارهای منطقی و یافتن خطاهای منطقی استفاده شود.
جدول کارنو چیست ؟
جدول کارنو (Karnaugh Map) یا K-map، یک نمودار گرافیکی است که برای ساده سازی توابع منطقی استفاده می شود. این جدول، با استفاده از مینترم ها، توابع منطقی را به صورت ساده تری نشان می دهد.
جدول کارنو، برای اولین بار توسط موریس کارنو، مهندس برق فرانسوی، در سال ۱۹۵۳ ارائه شد.
ساخت جدول کارنو
برای ساخت جدول کارنو، باید مراحل زیر را دنبال کرد:
- تعداد متغیرهای منطقی تابع را تعیین کنید.
- برای هر ترکیب از مقادیر ورودی، یک مربع در جدول ایجاد کنید.
- خروجی تابع را برای هر ترکیب از مقادیر ورودی در مربع مربوطه قرار دهید.
- مینترم های تابع را شناسایی کنید.
به عنوان مثال، جدول کارنو برای تابع منطقی A * B * C برابر است با جدول زیر:
A | B | C | A * B * C
---|---|---|---
0 | 0 | 0 | 0
0 | 0 | 1 | 0
0 | 1 | 0 | 0
0 | 1 | 1 | 1
1 | 0 | 0 | 0
1 | 0 | 1 | 0
1 | 1 | 0 | 0
1 | 1 | 1 | 1
در این جدول، A، B و C متغیرهای منطقی هستند. خروجی تابع A * B * C برابر با 1 است اگر هر سه متغیر A، B و C برابر با 1 باشند. در غیر این صورت، خروجی تابع برابر با 0 است.
ساده سازی تابع با استفاده از جدول کارنو
برای ساده سازی تابع با استفاده از جدول کارنو، باید مراحل زیر را دنبال کرد:
- مینترم های تابع را شناسایی کنید.
- مینترم های مشابه را با هم ترکیب کنید.
- تابع ساده شده را با استفاده از مینترم های ترکیب شده بنویسید.
در مثال بالا، مینترم های تابع A * B * C عبارتند از:
A * B * C
A * B' * C
A' * B * C
A' * B' * C
مینترم های A * B * C و A’ * B’ * C مشابه هستند، بنابراین می توان آنها را با هم ترکیب کرد. این ترکیب منجر به مینترم جدیدی می شود که برابر است با:
(A * B * C) + (A' * B' * C)
این مینترم جدید برابر است با:
A * B * C * (1 + A' * B')
با استفاده از اصل مورگان اول، می توان عبارت بالا را به صورت زیر ساده کرد:
A * B * C * (A + B)
بنابراین، تابع ساده شده A * B * C برابر است با:
A * B * (A + B)
گیت یونیورسال چیست ؟
در الکترونیک دیجیتال، گیت یونیورسال (Universal gate) گیتی است که با استفاده از آن می توان هر نوع گیت منطقی دیگری را پیاده سازی کرد. دو نوع گیت یونیورسال وجود دارد:
- گیت NAND: گیت NAND یک گیت منطقی است که خروجی آن برابر است با AND مکمل ورودی ها.
- گیت NOR: گیت NOR یک گیت منطقی است که خروجی آن برابر است با OR مکمل ورودی ها.
با استفاده از گیت های NAND یا NOR می توان هر نوع گیت منطقی دیگری را پیاده سازی کرد. به عنوان مثال، می توان گیت AND را با استفاده از دو گیت NAND به صورت زیر پیاده سازی کرد:
A * B = (A * B)''
با استفاده از اصل مورگان دوم، می توان عبارت بالا را به صورت زیر ساده کرد:
A * B = A' + B'
بنابراین، گیت AND را می توان با استفاده از دو گیت NAND پیاده سازی کرد.
در اینجا چند مثال دیگر از پیاده سازی گیت های منطقی با استفاده از گیت های NAND یا NOR آورده شده است:
- گیت OR: (A + B) = (A’ * B’)’
- گیت NOT: A’ = (A * A’)’
- گیت XOR: (A ^ B) = (A * B’) + (A’ * B)
گیت های یونیورسال، ابزاری قدرتمند برای طراحی مدارهای منطقی هستند. استفاده از این گیت ها می تواند به کاهش پیچیدگی مدار و صرفه جویی در هزینه ها کمک کند.
گیت های یونیورسال NAND
در الکترونیک دیجیتال، گیت های یونیورسال NAND گیت هایی هستند که با استفاده از آنها می توان هر نوع گیت منطقی دیگری را پیاده سازی کرد. گیت NAND یک گیت منطقی است که خروجی آن برابر است با AND مکمل ورودی ها.
نماد گیت NAND
نماد گیت NAND به صورت زیر است:
A . B
در این نماد، A و B ورودی های گیت هستند و Y خروجی آن است. خروجی گیت NAND برابر است با A AND B:
Y = A * B
جدول درستی گیت NAND
جدول درستی گیت NAND به صورت زیر است:
A | B | Y |
---|---|---|
0 | 0 | 1 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
پیاده سازی گیت های منطقی با استفاده از گیت های NAND
با استفاده از گیت های NAND می توان هر نوع گیت منطقی دیگری را پیاده سازی کرد. به عنوان مثال، می توان گیت AND را با استفاده از دو گیت NAND به صورت زیر پیاده سازی کرد:
A * B = (A * B)''
با استفاده از اصل مورگان دوم، می توان عبارت بالا را به صورت زیر ساده کرد:
A * B = A' + B'
بنابراین، گیت AND را می توان با استفاده از دو گیت NAND پیاده سازی کرد.
در اینجا چند مثال دیگر از پیاده سازی گیت های منطقی با استفاده از گیت های NAND آورده شده است:
- گیت OR: (A + B) = (A’ * B’)’
- گیت NOT: A’ = (A * A’)’
- گیت XOR: (A ^ B) = (A * B’) + (A’ * B)
مزایا و معایب گیت های یونیورسال NAND
گیت های یونیورسال NAND مزایای زیر را دارند:
- انعطاف پذیری بالایی دارند.
- می توانند هر نوع گیت منطقی دیگری را پیاده سازی کنند.
گیت های یونیورسال NAND معایب زیر را نیز دارند:
- نسبت به گیت های منطقی پایه، پیچیده تر هستند.
- هزینه بیشتری دارند.
در مجموع، گیت های یونیورسال NAND ابزاری قدرتمند برای طراحی مدارهای منطقی هستند. استفاده از این گیت ها می تواند به کاهش پیچیدگی مدار و صرفه جویی در هزینه ها کمک کند.
گیت های یونیورسال NOR
در الکترونیک دیجیتال، گیت های یونیورسال NOR گیت هایی هستند که با استفاده از آنها می توان هر نوع گیت منطقی دیگری را پیاده سازی کرد. گیت NOR یک گیت منطقی است که خروجی آن برابر است با OR مکمل ورودی ها.
نماد گیت NOR
نماد گیت NOR به صورت زیر است:
A + B
در این نماد، A و B ورودی های گیت هستند و Y خروجی آن است. خروجی گیت NOR برابر است با A OR B:
Y = A + B
جدول درستی گیت NOR
جدول درستی گیت NOR به صورت زیر است:
A | B | Y |
---|---|---|
0 | 0 | 1 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 0 |
پیاده سازی گیت های منطقی با استفاده از گیت های NOR
با استفاده از گیت های NOR می توان هر نوع گیت منطقی دیگری را پیاده سازی کرد. به عنوان مثال، می توان گیت AND را با استفاده از دو گیت NOR به صورت زیر پیاده سازی کرد:
A * B = (A + B)''
با استفاده از اصل مورگان اول، می توان عبارت بالا را به صورت زیر ساده کرد:
A * B = (A * B') + (A' * B)
بنابراین، گیت AND را می توان با استفاده از دو گیت NOR پیاده سازی کرد.
در اینجا چند مثال دیگر از پیاده سازی گیت های منطقی با استفاده از گیت های NOR آورده شده است:
- گیت OR: A + B = (A + B)’
- گیت NOT: A’ = (A + A’)’
- گیت XOR: (A ^ B) = (A + B’) – (A’ + B)
مزایا و معایب گیت های یونیورسال NOR
گیت های یونیورسال NOR مزایای زیر را دارند:
- انعطاف پذیری بالایی دارند.
- می توانند هر نوع گیت منطقی دیگری را پیاده سازی کنند.
گیت های یونیورسال NOR معایب زیر را نیز دارند:
- نسبت به گیت های منطقی پایه، پیچیده تر هستند.
- هزینه بیشتری دارند.
در مجموع، گیت های یونیورسال NOR ابزاری قدرتمند برای طراحی مدارهای منطقی هستند. استفاده از این گیت ها می تواند به کاهش پیچیدگی مدار و صرفه جویی در هزینه ها کمک کند.
تفاوت گیت های یونیورسال NAND و NOR
گیت های یونیورسال NAND و NOR هر دو می توانند هر نوع گیت منطقی دیگری را پیاده سازی کنند. با این حال، تفاوت های کلیدی بین این دو نوع گیت وجود دارد.
تفاوت اصلی بین گیت های یونیورسال NAND و NOR در این است که گیت NAND یک گیت AND مکمل است، در حالی که گیت NOR یک گیت OR مکمل است. این تفاوت باعث می شود که نحوه پیاده سازی گیت های منطقی با استفاده از این دو نوع گیت متفاوت باشد.
به عنوان مثال، برای پیاده سازی گیت AND با استفاده از گیت های NAND، باید ورودی های گیت ها را مکمل کرد و سپس آنها را با هم AND کرد. اما برای پیاده سازی گیت AND با استفاده از گیت های NOR، باید ورودی های گیت ها را با هم OR کرد.
تفاوت دیگر بین گیت های یونیورسال NAND و NOR در این است که گیت های NAND معمولاً نسبت به گیت های NOR سریعتر هستند. این به این دلیل است که گیت های NAND فقط نیاز به یک لایه منطقی برای پیاده سازی دارند، در حالی که گیت های NOR نیاز به دو لایه منطقی دارند.
در مجموع، انتخاب بین گیت های یونیورسال NAND و NOR به عوامل مختلفی بستگی دارد، از جمله سرعت، هزینه و پیچیدگی مدار.
فصل چهارم مدار منطقی
مدار های جمع کننده
مدار جمع کننده یک مدار دیجیتال است که مجموع دو یا چند عدد را محاسبه می کند. مدارهای جمع کننده می توانند برای جمع اعداد دودویی، اعداد باینری و سایر انواع اعداد استفاده شوند.
انواع مدارهای جمع کننده
دو نوع اصلی مدار جمع کننده وجود دارد:
- جمع کننده باینری: جمع کننده باینری یک مدار جمع کننده است که برای جمع اعداد دودویی استفاده می شود.
- جمع کننده عمومی: جمع کننده عمومی یک مدار جمع کننده است که می تواند برای جمع انواع اعداد استفاده شود.
جمع کننده باینری
جمع کننده باینری یک مدار جمع کننده است که برای جمع اعداد دودویی استفاده می شود. جمع کننده باینری از چهار گیت NAND یا NOR تشکیل شده است.
نماد مدار جمع کننده باینری
نماد مدار جمع کننده باینری به صورت زیر است:
A B Cin Sum Cout
در این نماد، A و B ورودی های مدار هستند، Cin ورودی حمل است، Sum خروجی مدار است و Cout خروجی حمل است.
عملکرد مدار جمع کننده باینری
عملکرد مدار جمع کننده باینری به صورت زیر است:
Sum = A * B + Cin
Cout = (A * B) + A + B
در این عبارت، A و B ورودی های مدار هستند، Cin ورودی حمل است، Sum خروجی مدار است و Cout خروجی حمل است.
جمع کننده عمومی
جمع کننده عمومی یک مدار جمع کننده است که می تواند برای جمع انواع اعداد استفاده شود. جمع کننده عمومی از چندین گیت منطقی تشکیل شده است.
نماد مدار جمع کننده عمومی
نماد مدار جمع کننده عمومی به صورت زیر است:
A B Cin Sum Cout
در این نماد، A و B ورودی های مدار هستند، Cin ورودی حمل است، Sum خروجی مدار است و Cout خروجی حمل است.
عملکرد مدار جمع کننده عمومی
عملکرد مدار جمع کننده عمومی به صورت زیر است:
Sum = f(A, B, Cin)
Cout = g(A, B, Cin)
در این عبارت، A و B ورودی های مدار هستند، Cin ورودی حمل است، Sum خروجی مدار است و Cout خروجی حمل است.
مجموعه های جمع کننده
مجموعه های جمع کننده مجموعه ای از مدارهای جمع کننده هستند که می توان از آنها برای جمع اعداد استفاده کرد. مجموعه های جمع کننده معمولاً شامل مدارهای جمع کننده باینری، مدارهای جمع کننده عمومی و سایر مدارهای جمع کننده هستند.
مدار نیم جمع کننده
مدار نیم جمع کننده یک مدار دیجیتال است که مجموع دو عدد یک بیتی را محاسبه می کند. مدار نیم جمع کننده از دو گیت منطقی AND و OR تشکیل شده است.
نماد مدار نیم جمع کننده
نماد مدار نیم جمع کننده به صورت زیر است:
A B S
در این نماد، A و B ورودی های مدار هستند و S خروجی مدار است.
عملکرد مدار نیم جمع کننده
عملکرد مدار نیم جمع کننده به صورت زیر است:
S = A * B
در این عبارت، A و B ورودی های مدار هستند و S خروجی مدار است.
ساخت مدار نیم جمع کننده
مدارهای نیم جمع کننده معمولاً با استفاده از گیت های منطقی AND و OR ساخته می شوند. یک مدار نیم جمع کننده با استفاده از گیت های منطقی AND و OR به صورت زیر ساخته می شود:
A B S
| |
-- +
| |
A' B'
در این مدار، A و B ورودی های مدار هستند و S خروجی مدار است. گیت منطقی AND خروجی A * B را تولید می کند و گیت منطقی OR خروجی A * B + A’ * B’ را تولید می کند.
مدار تمام جمع کننده
مدار تمام جمع کننده یک مدار دیجیتال است که مجموع دو عدد چند بیتی را محاسبه می کند. مدار تمام جمع کننده از چهار مدار نیم جمع کننده و یک گیت منطقی AND تشکیل شده است.
نماد مدار تمام جمع کننده
نماد مدار تمام جمع کننده به صورت زیر است:
A B Cin Sum Cout
در این نماد، A و B ورودی های مدار هستند، Cin ورودی حمل است، Sum خروجی مدار است و Cout خروجی حمل است.
عملکرد مدار تمام جمع کننده
عملکرد مدار تمام جمع کننده به صورت زیر است:
Sum = A * B + Cin
Cout = (A * B) + A + B
در این عبارت، A و B ورودی های مدار هستند، Cin ورودی حمل است، Sum خروجی مدار است و Cout خروجی حمل است.
ساخت مدار تمام جمع کننده
مدارهای تمام جمع کننده معمولاً با استفاده از مدارهای نیم جمع کننده ساخته می شوند. یک مدار تمام جمع کننده با استفاده از مدارهای نیم جمع کننده به صورت زیر ساخته می شود:
A B Cin
| | |
-- + -- +
| | |
A' B' Cin'
در این مدار، A و B ورودی های مدار هستند، Cin ورودی حمل است، Sum خروجی مدار است و Cout خروجی حمل است. مدارهای نیم جمع کننده A * B و (A’ * B’) + (Cin’ * Cin) را تولید می کنند. گیت منطقی AND خروجی A * B + (A’ * B’) + (Cin’ * Cin) را تولید می کند.
مدار های تفریق کننده
مدار تفریق کننده یک مدار دیجیتال است که اختلاف دو عدد را محاسبه می کند. مدارهای تفریق کننده می توانند برای تفریق اعداد دودویی، اعداد باینری و سایر انواع اعداد استفاده شوند.
انواع مدارهای تفریق کننده
دو نوع اصلی مدار تفریق کننده وجود دارد:
- تفریق کننده باینری: تفریق کننده باینری یک مدار تفریق کننده است که برای تفریق اعداد دودویی استفاده می شود.
- تفریق کننده عمومی: تفریق کننده عمومی یک مدار تفریق کننده است که می تواند برای تفریق انواع اعداد استفاده شود.
تفریق کننده باینری
تفریق کننده باینری یک مدار تفریق کننده است که برای تفریق اعداد دودویی استفاده می شود. تفریق کننده باینری از چهار گیت NAND یا NOR تشکیل شده است.
نماد مدار تفریق کننده باینری
نماد مدار تفریق کننده باینری به صورت زیر است:
A B Diff
در این نماد، A و B ورودی های مدار هستند و Diff خروجی مدار است.
عملکرد مدار تفریق کننده باینری
عملکرد مدار تفریق کننده باینری به صورت زیر است:
Diff = A * B' + (A' * B) + Cin
در این عبارت، A و B ورودی های مدار هستند، Cin ورودی حمل است و Diff خروجی مدار است.
تفریق کننده عمومی
تفریق کننده عمومی یک مدار تفریق کننده است که می تواند برای تفریق انواع اعداد استفاده شود. تفریق کننده عمومی از چندین گیت منطقی تشکیل شده است.
نماد مدار تفریق کننده عمومی
نماد مدار تفریق کننده عمومی به صورت زیر است:
A B Diff
در این نماد، A و B ورودی های مدار هستند و Diff خروجی مدار است.
عملکرد مدار تفریق کننده عمومی
عملکرد مدار تفریق کننده عمومی به صورت زیر است:
Diff = f(A, B, Cin)
در این عبارت، A و B ورودی های مدار هستند، Cin ورودی حمل است و Diff خروجی مدار است.
مدار نیم تفریق کننده
مدار نیم تفریق کننده یک مدار دیجیتال است که اختلاف دو عدد یک بیتی را محاسبه می کند. مدار نیم تفریق کننده از دو گیت منطقی AND و OR تشکیل شده است.
نماد مدار نیم تفریق کننده
نماد مدار نیم تفریق کننده به صورت زیر است:
A B D
در این نماد، A و B ورودی های مدار هستند و D خروجی مدار است.
عملکرد مدار نیم تفریق کننده
عملکرد مدار نیم تفریق کننده به صورت زیر است:
D = A' * B
در این عبارت، A و B ورودی های مدار هستند و D خروجی مدار است.
ساخت مدار نیم تفریق کننده
مدارهای نیم تفریق کننده معمولاً با استفاده از گیت های منطقی AND و OR ساخته می شوند. یک مدار نیم تفریق کننده با استفاده از گیت های منطقی AND و OR به صورت زیر ساخته می شود:
A B D
| |
-- +
| |
A' B
در این مدار، A و B ورودی های مدار هستند و D خروجی مدار است. گیت منطقی AND خروجی A’ * B را تولید می کند و گیت منطقی OR خروجی A’ * B + (A’ * B) را تولید می کند.
مدار تمام تفریق کننده
مدار تمام تفریق کننده یک مدار دیجیتال است که اختلاف دو عدد چند بیتی را محاسبه می کند. مدار تمام تفریق کننده از چهار مدار نیم تفریق کننده و یک گیت منطقی AND تشکیل شده است.
نماد مدار تمام تفریق کننده
نماد مدار تمام تفریق کننده به صورت زیر است:
A B Cin Diff
در این نماد، A و B ورودی های مدار هستند، Cin ورودی حمل است و Diff خروجی مدار است.
عملکرد مدار تمام تفریق کننده
عملکرد مدار تمام تفریق کننده به صورت زیر است:
Diff = A' * B + (A * B') + Cin
در این عبارت، A و B ورودی های مدار هستند، Cin ورودی حمل است و Diff خروجی مدار است.
ساخت مدار تمام تفریق کننده
مدارهای تمام تفریق کننده معمولاً با استفاده از مدارهای نیم تفریق کننده ساخته می شوند. یک مدار تمام تفریق کننده با استفاده از مدارهای نیم تفریق کننده به صورت زیر ساخته می شود:
A B Cin
| | |
-- + -- +
| | |
A' B' Cin'
در این مدار، A و B ورودی های مدار هستند، Cin ورودی حمل است و Diff خروجی مدار است. مدارهای نیم تفریق کننده A’ * B و (A * B’) + (Cin’ * Cin) را تولید می کنند. گیت منطقی AND خروجی A’ * B + (A * B’) + (Cin’ * Cin) را تولید می کند.
مدار آشکار ساز در مدار منطقی
مدار آشکارساز یک مدار دیجیتال است که وضعیت یک ورودی را تشخیص می دهد و خروجی مناسب را تولید می کند. مدارهای آشکارساز می توانند برای تشخیص انواع مختلفی از وضعیت ها استفاده شوند، از جمله:
- سطح منطقی: مدارهای آشکارساز می توانند برای تشخیص اینکه یک ورودی در سطح منطقی 0 یا 1 قرار دارد استفاده شوند.
- مقادیر برابر: مدارهای آشکارساز می توانند برای تشخیص اینکه دو ورودی برابر هستند یا خیر استفاده شوند.
- مقادیر نابرابر: مدارهای آشکارساز می توانند برای تشخیص اینکه دو ورودی نابرابر هستند یا خیر استفاده شوند.
- شرایط خاص: مدارهای آشکارساز می توانند برای تشخیص شرایط خاص، مانند اینکه یک ورودی در محدوده خاصی قرار دارد یا خیر، استفاده شوند.
انواع مدارهای آشکارساز
دو نوع اصلی مدار آشکارساز وجود دارد:
- مدار آشکارساز ساده: مدار آشکارساز ساده از یک گیت منطقی برای تشخیص وضعیت ورودی استفاده می کند.
- مدار آشکارساز ترکیبی: مدار آشکارساز ترکیبی از چندین گیت منطقی برای تشخیص وضعیت ورودی استفاده می کند.
نماد مدار آشکارساز
نماد مدار آشکارساز به صورت زیر است:
A Y
در این نماد، A ورودی مدار است و Y خروجی مدار است.
عملکرد مدار آشکارساز
عملکرد مدار آشکارساز به نوع مدار آشکارساز بستگی دارد.
مدار آشکارساز ساده
عملکرد مدار آشکارساز ساده به صورت زیر است:
Y = f(A)
در این عبارت، A ورودی مدار است و Y خروجی مدار است و f تابع منطقی است که وضعیت ورودی را تشخیص می دهد.
مدار آشکارساز ترکیبی
عملکرد مدار آشکارساز ترکیبی به صورت زیر است:
Y = g(A, B, ..., N)
در این عبارت، A، B، …، N ورودی های مدار هستند و Y خروجی مدار است و g تابع منطقی است که وضعیت ورودی را تشخیص می دهد.
کاربردهای مدارهای آشکارساز
مدارهای آشکارساز در بسیاری از کاربردهای دیجیتال استفاده می شوند. برخی از کاربردهای مدارهای آشکارساز عبارتند از:
- پردازنده ها: مدارهای آشکارساز در پردازنده ها برای تشخیص شرایط مختلف، مانند اینکه یک عدد صحیح مثبت است یا خیر، استفاده می شوند.
- ماشین حساب ها: مدارهای آشکارساز در ماشین حساب ها برای تشخیص شرایط مختلف، مانند اینکه یک دکمه فشار داده شده است یا خیر، استفاده می شوند.
- کنترل: مدارهای آشکارساز در مدارهای کنترل برای تشخیص شرایط مختلف، مانند اینکه یک سیگنال ورودی تغییر کرده است یا خیر، استفاده می شوند.
مثال
در مثال زیر، یک مدار آشکارساز ساده برای تشخیص اینکه یک ورودی در سطح منطقی 0 قرار دارد یا خیر، طراحی شده است.
A Y
| |
-- +
| |
A
در این مدار، A ورودی مدار است و Y خروجی مدار است. گیت منطقی AND خروجی A * A را تولید می کند. اگر A = 0، پس A * A = 0 و Y = 1. اگر A = 1، پس A * A = 1 و Y = 0.
در مثال زیر، یک مدار آشکارساز ترکیبی برای تشخیص اینکه دو ورودی برابر هستند یا خیر، طراحی شده است.
A B Y
| | |
-- + -- +
| | |
A' B' | A B
در این مدار، A و B ورودی های مدار هستند و Y خروجی مدار است. گیت های منطقی AND خروجی های A’ * B’ و A * B را تولید می کنند. گیت منطقی OR خروجی A’ * B’ + A * B را تولید می کند. اگر A = B، پس A’ * B’ = 0 و A * B = 0 و Y = 1. اگر A != B، پس A’ * B’ != 0 یا A * B != 0 و Y = 0.
مالتی پلکسر در مدار منطقی چیست ؟
مالتی پلکسر یک مدار منطقی است که می تواند یکی از چندین سیگنال ورودی را به یک خروجی مشترک هدایت کند. مالتی پلکسرها در بسیاری از کاربردهای دیجیتال استفاده می شوند، از جمله:
- انتخاب: مالتی پلکسرها می توانند برای انتخاب یکی از چندین منبع داده استفاده شوند.
- کنترل: مالتی پلکسرها می توانند برای کنترل جریان داده ها استفاده شوند.
- تبدیل: مالتی پلکسرها می توانند برای تبدیل بین انواع مختلف داده ها استفاده شوند.
انواع مالتی پلکسر
دو نوع اصلی مالتی پلکسر وجود دارد:
- مالتی پلکسر با انتخاب مستقیم: مالتی پلکسر با انتخاب مستقیم از یک سیگنال انتخاب برای تعیین اینکه کدام سیگنال ورودی به خروجی هدایت شود استفاده می کند.
- مالتی پلکسر با انتخاب غیرمستقیم: مالتی پلکسر با انتخاب غیرمستقیم از یک یا چند سیگنال انتخاب برای تعیین اینکه کدام سیگنال ورودی به خروجی هدایت شود استفاده می کند.
نماد مالتی پلکسر
نماد مالتی پلکسر به صورت زیر است:
S A0 A1 ... AN Y
در این نماد، S سیگنال انتخاب است، A0، A1، …، AN سیگنال های ورودی هستند و Y خروجی است.
عملکرد مالتی پلکسر
عملکرد مالتی پلکسر به نوع مالتی پلکسر بستگی دارد.
مالتی پلکسر با انتخاب مستقیم
عملکرد مالتی پلکسر با انتخاب مستقیم به صورت زیر است:
Y = S * A0 + (S' * A1) + ... + (S^(N-1) * AN)
در این عبارت، S سیگنال انتخاب است، A0، A1، …، AN سیگنال های ورودی هستند و Y خروجی است.
مالتی پلکسر با انتخاب غیرمستقیم
عملکرد مالتی پلکسر با انتخاب غیرمستقیم به صورت زیر است:
Y = f(S, A0, A1, ..., AN)
در این عبارت، S سیگنال انتخاب است، A0، A1، …، AN سیگنال های ورودی هستند و Y خروجی است و f تابع منطقی است که تعیین می کند کدام سیگنال ورودی به خروجی هدایت شود.
کاربردهای مالتی پلکسر
مالتی پلکسرها در بسیاری از کاربردهای دیجیتال استفاده می شوند. برخی از کاربردهای مالتی پلکسرها عبارتند از:
- در کامپیوترها، مالتی پلکسرها برای انتخاب یکی از چندین منبع داده، مانند حافظه، ورودی/خروجی یا اتصالات شبکه، استفاده می شوند.
- در لوازم الکترونیکی مصرفی، مالتی پلکسرها برای کنترل جریان داده ها در دستگاه ها، مانند تلویزیون ها، رادیو ها و تلفن های همراه، استفاده می شوند.
- در سیستم های کنترل، مالتی پلکسرها برای تبدیل بین انواع مختلف داده ها، مانند آنالوگ و دیجیتال، استفاده می شوند.
مثال
در مثال زیر، یک مالتی پلکسر با انتخاب مستقیم برای انتخاب یکی از دو سیگنال ورودی استفاده شده است.
S A0 A1 Y
0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 1
1 0 0 1
1 0 1 0
1 1 0 1
1 1 1 0
در این مثال، S سیگنال انتخاب است، A0 و A1 سیگنال های ورودی هستند و Y خروجی است. اگر S = 0، پس A0 به خروجی هدایت می شود. اگر S = 1، پس A1 به خروجی هدایت می شود.
دیکودر در مدار منطقی چیست ؟
دیکودر یک مدار منطقی است که یک کد ورودی را به یک مجموعه از خروجی ها تبدیل می کند. دیکودرها در بسیاری از کاربردهای دیجیتال استفاده می شوند، از جمله:
- نمایش: دیکودرها می توانند برای نمایش یک کد ورودی به صورت یک سری از چراغ های LED یا نمایشگرهای متنی استفاده شوند.
- کنترل: دیکودرها می توانند برای کنترل عملکرد یک دستگاه با استفاده از یک کد ورودی استفاده شوند.
- تبدیل: دیکودرها می توانند برای تبدیل بین انواع مختلف کدها استفاده شوند.
انواع دیکودر
دو نوع اصلی دیکودر وجود دارد:
- دیکودر با انتخاب مستقیم: دیکودر با انتخاب مستقیم از یک سیگنال انتخاب برای تعیین اینکه کدام خروجی فعال شود استفاده می کند.
- دیکودر با انتخاب غیرمستقیم: دیکودر با انتخاب غیرمستقیم از یک یا چند سیگنال انتخاب برای تعیین اینکه کدام خروجی فعال شود استفاده می کند.
نماد دیکودر
نماد دیکودر به صورت زیر است:
A0 A1 ... AN Y0 Y1 ... YN
در این نماد، A0، A1، …، AN کد ورودی هستند و Y0، Y1، …، YN خروجی ها هستند.
عملکرد دیکودر
عملکرد دیکودر به نوع دیکودر بستگی دارد.
دیکودر با انتخاب مستقیم
عملکرد دیکودر با انتخاب مستقیم به صورت زیر است:
Y0 = A0
Y1 = A1
...
YN = AN
در این عبارت، A0، A1، …، AN کد ورودی هستند و Y0، Y1، …، YN خروجی ها هستند.
دیکودر با انتخاب غیرمستقیم
عملکرد دیکودر با انتخاب غیرمستقیم به صورت زیر است:
Y0 = f(A0, A1, ..., AN)
Y1 = f(A0, A1, ..., AN)
...
YN = f(A0, A1, ..., AN)
در این عبارت، A0، A1، …، AN کد ورودی هستند و Y0، Y1، …، YN خروجی ها هستند و f تابع منطقی است که تعیین می کند کدام خروجی فعال شود.
کاربردهای دیکودر
دیکودرها در بسیاری از کاربردهای دیجیتال استفاده می شوند. برخی از کاربردهای دیکودرها عبارتند از:
- در کامپیوترها، دیکودرها برای نمایش اعداد به صورت یک سری از چراغ های LED یا نمایشگرهای متنی استفاده می شوند.
- در لوازم الکترونیکی مصرفی، دیکودرها برای کنترل عملکرد دستگاه ها با استفاده از یک کد ورودی، مانند کنترل تلویزیون یا رادیو، استفاده می شوند.
- در سیستم های کنترل، دیکودرها برای تبدیل بین انواع مختلف کدها، مانند کدهای آنالوگ و دیجیتال، استفاده می شوند.
مثال
در مثال زیر، یک دیکودر با انتخاب مستقیم برای نمایش یک کد ورودی به صورت یک سری از چراغ های LED استفاده شده است.
A0 A1 Y0 Y1
0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 1
1 0 0 1
1 0 1 0
1 1 0 1
1 1 1 0
در این مثال، A0 و A1 کد ورودی هستند و Y0 و Y1 خروجی ها هستند. اگر A0 = 0 و A1 = 0، پس Y0 = 1 و Y1 = 0. اگر A0 = 0 و A1 = 1، پس Y0 = 1 و Y1 = 1. و غیره.
انکودر در مدار منطقی چیست ؟
انکودر یک مدار منطقی است که یک مجموعه از ورودی ها را به یک کد ورودی تبدیل می کند. انکودرها در بسیاری از کاربردهای دیجیتال استفاده می شوند، از جمله:
- کنترل: انکودرها می توانند برای کنترل عملکرد یک دستگاه با استفاده از یک مجموعه ورودی استفاده شوند.
- تبدیل: انکودرها می توانند برای تبدیل بین انواع مختلف داده ها استفاده شوند.
انواع انکودر
دو نوع اصلی انکودر وجود دارد:
- انکودر با انتخاب مستقیم: انکودر با انتخاب مستقیم از یک سیگنال انتخاب برای تعیین اینکه کدام ورودی فعال شود استفاده می کند.
- انکودر با انتخاب غیرمستقیم: انکودر با انتخاب غیرمستقیم از یک یا چند سیگنال انتخاب برای تعیین اینکه کدام ورودی فعال شود استفاده می کند.
نماد انکودر
نماد انکودر به صورت زیر است:
A0 A1 ... AN Y
در این نماد، A0، A1، …، AN ورودی ها هستند و Y کد ورودی است.
عملکرد انکودر
عملکرد انکودر به نوع انکودر بستگی دارد.
انکودر با انتخاب مستقیم
عملکرد انکودر با انتخاب مستقیم به صورت زیر است:
Y = A0 * 2^0 + A1 * 2^1 + ... + AN * 2^(N-1)
در این عبارت، A0، A1، …، AN ورودی ها هستند و Y کد ورودی است.
انکودر با انتخاب غیرمستقیم
عملکرد انکودر با انتخاب غیرمستقیم به صورت زیر است:
Y = f(A0, A1, ..., AN)
در این عبارت، A0، A1، …، AN ورودی ها هستند و Y کد ورودی است و f تابع منطقی است که تعیین می کند کدام ورودی فعال شود.
کاربردهای انکودر
انکودرها در بسیاری از کاربردهای دیجیتال استفاده می شوند. برخی از کاربردهای انکودرها عبارتند از:
- در کامپیوترها، انکودرها برای کنترل عملکرد یک دستگاه با استفاده از یک مجموعه ورودی، مانند کنترل بازی های ویدیویی، استفاده می شوند.
- در لوازم الکترونیکی مصرفی، انکودرها برای تبدیل بین انواع مختلف داده ها، مانند کدهای آنالوگ و دیجیتال، استفاده می شوند.
- در سیستم های کنترل، انکودرها برای کنترل عملکرد یک دستگاه با استفاده از یک مجموعه ورودی، مانند کنترل یک ماشین، استفاده می شوند.
مثال
در مثال زیر، یک انکودر با انتخاب مستقیم برای تبدیل یک مجموعه ورودی به یک کد ورودی استفاده شده است.
A0 A1 Y
0 0 0
0 1 1
1 0 2
1 1 3
در این مثال، A0 و A1 ورودی ها هستند و Y کد ورودی است. اگر A0 = 0 و A1 = 0، پس Y = 0. اگر A0 = 0 و A1 = 1، پس Y = 1. و غیره.
تفاوت انکودر با دیکودر
تفاوت اصلی بین انکودر و دیکودر در این است که انکودر یک مجموعه ورودی را به یک کد ورودی تبدیل می کند، در حالی که دیکودر یک کد ورودی را به یک مجموعه خروجی تبدیل می کند.
فصل پنج مدار منطقی
مدار های ترتیبی درس مدار منطقی
مدار ترتیبی یک مدار دیجیتال است که وضعیت آن به مرور زمان تغییر می کند. مدارهای ترتیبی در بسیاری از کاربردهای دیجیتال استفاده می شوند، از جمله:
- کنترل: مدارهای ترتیبی می توانند برای کنترل عملکرد یک دستگاه استفاده شوند.
- محاسبات: مدارهای ترتیبی می توانند برای انجام محاسبات استفاده شوند.
- ذخیره سازی: مدارهای ترتیبی می توانند برای ذخیره داده ها استفاده شوند.
انواع مدارهای ترتیبی
دو نوع اصلی مدار ترتیبی وجود دارد:
- مدار ترتیبی دودویی: مدار ترتیبی دودویی یک مدار ترتیبی است که وضعیت آن فقط می تواند دو مقدار داشته باشد، 0 یا 1.
- مدار ترتیبی چند ارزشی: مدار ترتیبی چند ارزشی یک مدار ترتیبی است که وضعیت آن می تواند بیش از دو مقدار داشته باشد.
نماد مدارهای ترتیبی
نماد مدارهای ترتیبی به صورت زیر است:
S D Q
در این نماد، S ورودی ساعت است، D ورودی داده است و Q خروجی است.
عملکرد مدارهای ترتیبی
عملکرد مدارهای ترتیبی به نوع مدار ترتیبی بستگی دارد.
مدار ترتیبی دودویی
عملکرد مدار ترتیبی دودویی به صورت زیر است:
Q(t+1) = f(S(t), D(t))
در این عبارت، Q(t+1) خروجی مدار در زمان t+1 است، S(t) ورودی ساعت در زمان t است، D(t) ورودی داده در زمان t است و f تابع منطقی است که وضعیت مدار را تعیین می کند.
مدار ترتیبی چند ارزشی
عملکرد مدار ترتیبی چند ارزشی به صورت زیر است:
Q(t+1) = g(S(t), D(t))
در این عبارت، Q(t+1) خروجی مدار در زمان t+1 است، S(t) ورودی ساعت در زمان t است، D(t) ورودی داده در زمان t است و g تابع منطقی است که وضعیت مدار را تعیین می کند.
کاربردهای مدارهای ترتیبی
مدارهای ترتیبی در بسیاری از کاربردهای دیجیتال استفاده می شوند. برخی از کاربردهای مدارهای ترتیبی عبارتند از:
- در کامپیوترها، مدارهای ترتیبی برای کنترل عملکرد CPU، حافظه و دستگاه های جانبی استفاده می شوند.
- در لوازم الکترونیکی مصرفی، مدارهای ترتیبی برای کنترل عملکرد تلویزیون، رادیو و تلفن های همراه استفاده می شوند.
- در سیستم های کنترل، مدارهای ترتیبی برای کنترل عملکرد ماشین ها، هواپیماها و سایر سیستم های پیچیده استفاده می شوند.
مثال
در مثال زیر، یک مدار ترتیبی دودویی ساده برای شمارش استفاده شده است.
S D Q
0 0 0
1 0 1
0 1 2
1 1 3
در این مثال، S ورودی ساعت است، D ورودی داده است و Q خروجی است. اگر S = 1 باشد، وضعیت مدار به مقدار D تغییر می کند. اگر S = 0 باشد، وضعیت مدار ثابت می ماند.
در این مثال، مدار ابتدا در حالت 0 قرار دارد. هنگامی که S = 1 شود، وضعیت مدار به 1 تغییر می کند. هنگامی که S = 0 شود، وضعیت مدار ثابت می ماند. هنگامی که S = 1 شود، وضعیت مدار به 2 تغییر می کند. و غیره.
مدار قفل کننده صفر چیست ؟
مدار قفل کننده صفر یک مدار دیجیتال است که خروجی آن فقط زمانی 1 می شود که ورودی آن به 0 تغییر کند. مدارهای قفل کننده صفر در بسیاری از کاربردهای دیجیتال استفاده می شوند، از جمله:
- کنترل: مدارهای قفل کننده صفر می توانند برای کنترل عملکرد یک دستگاه استفاده شوند.
- محاسبات: مدارهای قفل کننده صفر می توانند برای انجام محاسبات استفاده شوند.
- ذخیره سازی: مدارهای قفل کننده صفر می توانند برای ذخیره داده ها استفاده شوند.
انواع مدارهای قفل کننده صفر
دو نوع اصلی مدار قفل کننده صفر وجود دارد:
- مدار قفل کننده صفر ساده: مدار قفل کننده صفر ساده از یک گیت AND و یک گیت NOT استفاده می کند.
- مدار قفل کننده صفر ترکیبی: مدار قفل کننده صفر ترکیبی از چندین گیت منطقی استفاده می کند.
نماد مدارهای قفل کننده صفر
نماد مدارهای قفل کننده صفر به صورت زیر است:
R S Q
در این نماد، R ورودی ریست است، S ورودی ساعت است و Q خروجی است.
عملکرد مدارهای قفل کننده صفر
عملکرد مدارهای قفل کننده صفر به نوع مدار قفل کننده صفر بستگی دارد.
مدار قفل کننده صفر ساده
عملکرد مدار قفل کننده صفر ساده به صورت زیر است:
Q = (S * R')'
در این عبارت، Q خروجی مدار است، S ورودی ساعت است و R ورودی ریست است.
مدار قفل کننده صفر ترکیبی
عملکرد مدار قفل کننده صفر ترکیبی به صورت زیر است:
Q = f(S, R)
در این عبارت، Q خروجی مدار است، S ورودی ساعت است و R ورودی ریست است و f تابع منطقی است که وضعیت مدار را تعیین می کند.
کاربردهای مدارهای قفل کننده صفر
مدارهای قفل کننده صفر در بسیاری از کاربردهای دیجیتال استفاده می شوند. برخی از کاربردهای مدارهای قفل کننده صفر عبارتند از:
- در کامپیوترها، مدارهای قفل کننده صفر برای کنترل عملکرد CPU، حافظه و دستگاه های جانبی استفاده می شوند.
- در لوازم الکترونیکی مصرفی، مدارهای قفل کننده صفر برای کنترل عملکرد تلویزیون، رادیو و تلفن های همراه استفاده می شوند.
- در سیستم های کنترل، مدارهای قفل کننده صفر برای کنترل عملکرد ماشین ها، هواپیماها و سایر سیستم های پیچیده استفاده می شوند.
مثال
در مثال زیر، یک مدار قفل کننده صفر ساده برای ذخیره یک مقدار استفاده شده است.
R S Q
0 0 0
0 1 1
1 0 1
1 1 0
در این مثال، R ورودی ریست است، S ورودی ساعت است و Q خروجی است. اگر R = 0 باشد، مدار قفل می شود و Q مقدار خود را حفظ می کند. اگر R = 1 شود، مدار باز می شود و Q به 0 تغییر می کند.
در این مثال، مدار ابتدا در حالت 0 قرار دارد. هنگامی که S = 1 شود، مدار قفل می شود و Q مقدار 1 را حفظ می کند. هنگامی که S = 0 شود، مدار باز نمی شود و Q مقدار 1 را حفظ می کند. هنگامی که R = 1 شود، مدار باز می شود و Q به 0 تغییر می کند.
مدار قفل کننده یک چیست ؟
مدار قفل کننده یک یک مدار دیجیتال است که خروجی آن فقط زمانی 0 می شود که ورودی آن به 1 تغییر کند. مدارهای قفل کننده یک در بسیاری از کاربردهای دیجیتال استفاده می شوند، از جمله:
- کنترل: مدارهای قفل کننده یک می توانند برای کنترل عملکرد یک دستگاه استفاده شوند.
- محاسبات: مدارهای قفل کننده یک می توانند برای انجام محاسبات استفاده شوند.
- ذخیره سازی: مدارهای قفل کننده یک می توانند برای ذخیره داده ها استفاده شوند.
انواع مدارهای قفل کننده یک
دو نوع اصلی مدار قفل کننده یک وجود دارد:
- مدار قفل کننده یک ساده: مدار قفل کننده یک ساده از یک گیت AND و یک گیت NOT استفاده می کند.
- مدار قفل کننده یک ترکیبی: مدار قفل کننده یک ترکیبی از چندین گیت منطقی استفاده می کند.
نماد مدارهای قفل کننده یک
نماد مدارهای قفل کننده یک به صورت زیر است:
R S Q
در این نماد، R ورودی ریست است، S ورودی ساعت است و Q خروجی است.
عملکرد مدارهای قفل کننده یک
عملکرد مدارهای قفل کننده یک به نوع مدار قفل کننده یک بستگی دارد.
مدار قفل کننده یک ساده
عملکرد مدار قفل کننده یک ساده به صورت زیر است:
Q = (S * R)'
در این عبارت، Q خروجی مدار است، S ورودی ساعت است و R ورودی ریست است.
مدار قفل کننده یک ترکیبی
عملکرد مدار قفل کننده یک ترکیبی به صورت زیر است:
Q = f(S, R)
در این عبارت، Q خروجی مدار است، S ورودی ساعت است و R ورودی ریست است و f تابع منطقی است که وضعیت مدار را تعیین می کند.
کاربردهای مدارهای قفل کننده یک
مدارهای قفل کننده یک در بسیاری از کاربردهای دیجیتال استفاده می شوند. برخی از کاربردهای مدارهای قفل کننده یک عبارتند از:
- در کامپیوترها، مدارهای قفل کننده یک برای کنترل عملکرد CPU، حافظه و دستگاه های جانبی استفاده می شوند.
- در لوازم الکترونیکی مصرفی، مدارهای قفل کننده یک برای کنترل عملکرد تلویزیون، رادیو و تلفن های همراه استفاده می شوند.
- در سیستم های کنترل، مدارهای قفل کننده یک برای کنترل عملکرد ماشین ها، هواپیماها و سایر سیستم های پیچیده استفاده می شوند.
مثال
در مثال زیر، یک مدار قفل کننده یک ساده برای ذخیره یک مقدار استفاده شده است.
R S Q
0 0 1
0 1 0
1 0 0
1 1 1
در این مثال، R ورودی ریست است، S ورودی ساعت است و Q خروجی است. اگر R = 0 باشد، مدار قفل می شود و Q مقدار خود را حفظ می کند. اگر R = 1 شود، مدار باز می شود و Q به 1 تغییر می کند.
در این مثال، مدار ابتدا در حالت 1 قرار دارد. هنگامی که S = 1 شود، مدار قفل می شود و Q مقدار 1 را حفظ می کند. هنگامی که S = 0 شود، مدار باز نمی شود و Q مقدار 1 را حفظ می کند. هنگامی که R = 1 شود، مدار باز می شود و Q به 0 تغییر می کند.
تفاوت مدار قفل کننده یک با مدار قفل کننده صفر
تفاوت اصلی بین مدار قفل کننده یک و مدار قفل کننده صفر در این است که مدار قفل کننده یک فقط زمانی 0 می شود که ورودی آن به 1 تغییر کند، در حالی که مدار قفل کننده صفر فقط زمانی 1 می شود که ورودی آن به 0 تغییر کند.
فلیپ فلاپ چیست ؟
فلیپ فلاپ یک مدار دیجیتال است که می تواند یک بیت از داده را در خود ذخیره کند. فلیپ فلاپ ها در بسیاری از کاربردهای دیجیتال استفاده می شوند، از جمله:
- کنترل: فلیپ فلاپ ها می توانند برای کنترل عملکرد یک دستگاه استفاده شوند.
- محاسبات: فلیپ فلاپ ها می توانند برای انجام محاسبات استفاده شوند.
- ذخیره سازی: فلیپ فلاپ ها می توانند برای ذخیره داده ها استفاده شوند.
انواع فلیپ فلاپ
دو نوع اصلی فلیپ فلاپ وجود دارد:
- فلیپ فلاپ S-R: فلیپ فلاپ S-R یک فلیپ فلاپ ساده است که از دو ورودی S و R استفاده می کند.
- فلیپ فلاپ D: فلیپ فلاپ D یک فلیپ فلاپ ساده است که از یک ورودی D استفاده می کند.
نماد فلیپ فلاپ
نماد فلیپ فلاپ به صورت زیر است:
S R Q
در این نماد، S ورودی Set است، R ورودی Reset است و Q خروجی است.
فلیپ فلاپ SR
فلیپ فلاپ SR یک مدار دیجیتال است که می تواند یک بیت از داده را در خود ذخیره کند. فلیپ فلاپ SR از دو ورودی استفاده می کند، S و R. ورودی S Set نامیده می شود و باعث می شود که خروجی فلیپ فلاپ Q به 1 تغییر کند. ورودی R Reset نامیده می شود و باعث می شود که خروجی فلیپ فلاپ Q به 0 تغییر کند.
نماد فلیپ فلاپ SR به صورت زیر است:
S R Q
در این نماد، S ورودی Set، R ورودی Reset و Q خروجی است.
عملکرد فلیپ فلاپ SR به صورت زیر است:
Q(t+1) = S' * Q(t) + R * Q(t-1)
در این عبارت، Q(t+1) خروجی مدار در زمان t+1 است، S(t) ورودی Set در زمان t است، R(t) ورودی Reset در زمان t است و Q(t) خروجی مدار در زمان t است.
جدول حقیقت فلیپ فلاپ SR به صورت زیر است:
S | R | Q(t+1) |
---|---|---|
0 | 0 | Q(t) |
0 | 1 | Q(t)’ |
1 | 0 | 1 |
1 | 1 | Q(t-1) |
مثال
در مثال زیر، یک فلیپ فلاپ SR ساده برای ذخیره یک مقدار استفاده شده است.
S R Q
0 0 0
0 1 1
1 0 0
1 1 1
در این مثال، S ورودی Set است، R ورودی Reset است و Q خروجی است. اگر S = 1 باشد، Q به 1 تغییر می کند. اگر R = 1 باشد، Q به 0 تغییر می کند.
در این مثال، مدار ابتدا در حالت 0 قرار دارد. هنگامی که S = 1 شود، Q به 1 تغییر می کند. هنگامی که S = 0 شود، Q مقدار خود را حفظ می کند. هنگامی که R = 1 شود، Q به 0 تغییر می کند.
محدودیت های فلیپ فلاپ SR
فلیپ فلاپ SR دارای دو محدودیت اصلی است:
- حالت نامشخص: اگر S = R = 1 باشد، خروجی فلیپ فلاپ نامشخص است.
- حالت دودویی: فلیپ فلاپ SR فقط می تواند دو حالت داشته باشد، 0 یا 1.
برای رفع این محدودیت ها، فلیپ فلاپ های پیشرفته تری مانند فلیپ فلاپ D و فلیپ فلاپ JK استفاده می شوند.
فلیپ فلاپ SR پالس ساعت
فلیپ فلاپ SR پالس ساعت یک نوع خاص از فلیپ فلاپ SR است که از یک ورودی ساعت استفاده می کند. ورودی ساعت تعیین می کند که آیا تغییرات در ورودی های S و R بر خروجی فلیپ فلاپ تأثیر می گذارند یا خیر.
نماد فلیپ فلاپ SR پالس ساعت به صورت زیر است:
S R C Q
در این نماد، S ورودی Set، R ورودی Reset، C ورودی ساعت و Q خروجی است.
عملکرد فلیپ فلاپ SR پالس ساعت به صورت زیر است:
Q(t+1) = (S' * C + R * C') * Q(t)
در این عبارت، Q(t+1) خروجی مدار در زمان t+1 است، S(t) ورودی Set در زمان t است، R(t) ورودی Reset در زمان t است، C(t) ورودی ساعت در زمان t است و Q(t) خروجی مدار در زمان t است.
جدول حقیقت فلیپ فلاپ SR پالس ساعت به صورت زیر است:
S | R | C | Q(t+1) |
---|---|---|---|
0 | 0 | 0 | 0 |
0 | 0 | 1 | 0 |
0 | 1 | 0 | Q(t) |
0 | 1 | 1 | 0 |
1 | 0 | 0 | Q(t) |
1 | 0 | 1 | Q(t)’ |
1 | 1 | 0 | Q(t) |
1 | 1 | 1 | Q(t) |
مثال
در مثال زیر، یک فلیپ فلاپ SR پالس ساعت ساده برای ذخیره یک مقدار استفاده شده است.
S R C Q
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 1
1 0 1 1
1 1 0 1
1 1 1 1
در این مثال، S ورودی Set، R ورودی Reset، C ورودی ساعت و Q خروجی است. اگر C = 1 باشد، تغییرات در ورودی های S و R بر خروجی فلیپ فلاپ تأثیر می گذارند. اگر C = 0 باشد، تغییرات در ورودی های S و R بر خروجی فلیپ فلاپ تأثیر نمی گذارند.
در این مثال، مدار ابتدا در حالت 0 قرار دارد. هنگامی که C = 1 شود، Q به 0 تغییر می کند. هنگامی که S = 1 شود، Q به 1 تغییر می کند. هنگامی که C = 0 شود، Q مقدار خود را حفظ می کند. هنگامی که R = 1 شود، Q به 0 تغییر می کند. هنگامی که C = 1 شود، Q به 1 تغییر می کند.
فلیپ فلاپ JK
فلیپ فلاپ JK یک مدار دیجیتال است که می تواند یک بیت از داده را در خود ذخیره کند. فلیپ فلاپ JK از دو ورودی استفاده می کند، J و K. ورودی J Set نامیده می شود و باعث می شود که خروجی فلیپ فلاپ Q به 1 تغییر کند. ورودی K Reset نامیده می شود و باعث می شود که خروجی فلیپ فلاپ Q به 0 تغییر کند.
نماد فلیپ فلاپ JK به صورت زیر است:
J K Q
در این نماد، J ورودی Set، K ورودی Reset و Q خروجی است.
عملکرد فلیپ فلاپ JK به صورت زیر است:
Q(t+1) =
(J' * K + J * K') * Q(t)
در این عبارت، Q(t+1) خروجی مدار در زمان t+1 است، J(t) ورودی Set در زمان t است، K(t) ورودی Reset در زمان t است و Q(t) خروجی مدار در زمان t است.
جدول حقیقت فلیپ فلاپ JK به صورت زیر است:
J | K | Q(t+1) |
---|---|---|
0 | 0 | Q(t) |
0 | 1 | Q'(t) |
1 | 0 | Q(t)’ |
1 | 1 | Q(t)’X |
X به معنای هر مقدار است.
مثال
در مثال زیر، یک فلیپ فلاپ JK ساده برای ذخیره یک مقدار استفاده شده است.
J K Q
0 0 0
0 1 1
1 0 1
1 1 0
در این مثال، J ورودی Set، K ورودی Reset و Q خروجی است. اگر J = 1 و K = 0 باشد، Q به 1 تغییر می کند. اگر J = 0 و K = 1 باشد، Q به 0 تغییر می کند. اگر J = 1 و K = 1 باشد، Q به مقدار مخالف خود تغییر می کند.
در این مثال، مدار ابتدا در حالت 0 قرار دارد. هنگامی که J = 1 شود، Q به 1 تغییر می کند. هنگامی که J = 0 شود، Q مقدار خود را حفظ می کند. هنگامی که K = 1 شود، Q به 0 تغییر می کند. هنگامی که J = 1 و K = 1 شود، Q به 1 تغییر می کند.
فلیپ فلاپ D
فلیپ فلاپ D یک مدار دیجیتال است که می تواند یک بیت از داده را در خود ذخیره کند. فلیپ فلاپ D از یک ورودی استفاده می کند، D. ورودی D داده نامیده می شود و مقدار خروجی فلیپ فلاپ Q را در زمان بعدی تعیین می کند.
نماد فلیپ فلاپ D به صورت زیر است:
D Q
در این نماد، D ورودی داده و Q خروجی است.
عملکرد فلیپ فلاپ D به صورت زیر است:
Q(t+1) = D
در این عبارت، Q(t+1) خروجی مدار در زمان t+1 است و D ورودی داده است.
جدول حقیقت فلیپ فلاپ D به صورت زیر است:
D | Q(t+1) |
---|---|
0 | 0 |
1 | 1 |
مثال
در مثال زیر، یک فلیپ فلاپ D ساده برای ذخیره یک مقدار استفاده شده است.
D Q
0 0
1 1
در این مثال، D ورودی داده و Q خروجی است. اگر D = 0 باشد، Q در زمان بعدی 0 خواهد بود. اگر D = 1 باشد، Q در زمان بعدی 1 خواهد بود.
در این مثال، مدار ابتدا در حالت 0 قرار دارد. هنگامی که D = 1 شود، Q در زمان بعدی به 1 تغییر می کند. هنگامی که D = 0 شود، Q در زمان بعدی به 0 تغییر می کند.
فلیپ فلاپ T
فلیپ فلاپ T (Toggle Flip-Flop) یک نوع فلیپ فلاپ است که خروجی آن به صورت خودکار در هر پالس ساعت به مقدار مخالف خود تغییر می کند.
نماد فلیپ فلاپ T به صورت زیر است:
T Q
در این نماد، T ورودی toggle و Q خروجی است.
عملکرد فلیپ فلاپ T به صورت زیر است:
Q(t+1) = T
در این عبارت، Q(t+1) خروجی مدار در زمان t+1 است و T ورودی toggle است.
جدول حقیقت فلیپ فلاپ T به صورت زیر است:
T | Q(t+1) |
---|---|
0 | 1 |
1 | 0 |
مثال
در مثال زیر، یک فلیپ فلاپ T ساده برای ذخیره یک مقدار استفاده شده است.
T Q
0 1
1 0
در این مثال، T ورودی toggle و Q خروجی است. اگر T = 0 باشد، Q در زمان بعدی 1 خواهد بود. اگر T = 1 باشد، Q در زمان بعدی 0 خواهد بود.
در این مثال، مدار ابتدا در حالت 0 قرار دارد. هنگامی که T = 1 شود، Q در زمان بعدی به 0 تغییر می کند. هنگامی که T = 0 شود، Q در زمان بعدی به 1 تغییر می کند.
تفاوت فلیپ فلاپ T با فلیپ فلاپ D
تفاوت اصلی بین فلیپ فلاپ T و فلیپ فلاپ D در این است که خروجی فلیپ فلاپ T به صورت خودکار در هر پالس ساعت به مقدار مخالف خود تغییر می کند، در حالی که خروجی فلیپ فلاپ D فقط در صورتی تغییر می کند که ورودی داده تغییر کند.
فصل شش مدار منطقی
مدار غیرترتیبی چیست ؟
مدار غیرترتیبی (Asynchronus Circuit) یک مدار دیجیتال است که عملکرد آن به سیگنال ساعت وابسته نیست. در مدارهای غیرترتیبی، تغییرات در ورودی ها بلافاصله بر خروجی ها تأثیر می گذارند.
مدارهای غیرترتیبی معمولاً ساده تر و سریع تر از مدارهای ترتیبی هستند. با این حال، مدارهای غیرترتیبی ممکن است در برابر خطاهای لحظه ای حساس تر باشند.
مدارهای غیرترتیبی در بسیاری از کاربردهای دیجیتال استفاده می شوند، از جمله:
- کنترل: مدارهای غیرترتیبی می توانند برای کنترل عملکرد یک دستگاه استفاده شوند.
- محاسبات: مدارهای غیرترتیبی می توانند برای انجام محاسبات استفاده شوند.
- ذخیره سازی: مدارهای غیرترتیبی می توانند برای ذخیره داده ها استفاده شوند.
برخی از انواع مدارهای غیرترتیبی عبارتند از:
- دروازه منطقی: دروازه های منطقی ساده ترین نوع مدارهای غیرترتیبی هستند.
- جمع کننده-مخرب: جمع کننده-مخرب یک مدار غیرترتیبی است که می تواند دو عدد را با هم جمع کند.
- ضرب کننده: ضرب کننده یک مدار غیرترتیبی است که می تواند دو عدد را با هم ضرب کند.
- مقایسه کننده: مقایسه کننده یک مدار غیرترتیبی است که دو مقدار را با هم مقایسه می کند.
مزایای مدارهای غیرترتیبی
مدارهای غیرترتیبی دارای مزایای زیر نسبت به مدارهای ترتیبی هستند:
- سادگی: مدارهای غیرترتیبی معمولاً ساده تر از مدارهای ترتیبی هستند.
- سرعت: مدارهای غیرترتیبی می توانند در سرعت های بالاتری کار کنند.
- انعطاف پذیری: مدارهای غیرترتیبی می توانند برای انجام طیف گسترده ای از وظایف استفاده شوند.
معایب مدارهای غیرترتیبی
مدارهای غیرترتیبی دارای معایب زیر نسبت به مدارهای ترتیبی هستند:
- حساسیت به خطا: مدارهای غیرترتیبی ممکن است در برابر خطاهای لحظه ای حساس تر باشند.
- محدودیت در عملکرد: مدارهای غیرترتیبی ممکن است عملکرد محدود تری نسبت به مدارهای ترتیبی داشته باشند.
مفهوم حافظه در مدارات ترتیبی
مفهوم حافظه در مدارات ترتیبی به این معنا است که مدار ترتیبی می تواند مقدار خود را در زمان های غیر ساعت حفظ کند. این امر به دلیل وجود عناصر حافظه در مدار ترتیبی است. عناصر حافظه می توانند مقدار خود را در زمان های غیر ساعت حفظ کنند.
عناصر حافظه در مدارات ترتیبی می توانند به دو دسته تقسیم شوند:
- عناصر حافظه منطقی: عناصر حافظه منطقی مانند فلیپ فلاپ ها، می توانند مقدار خود را در زمان های غیر ساعت حفظ کنند.
- عناصر حافظه فیزیکی: عناصر حافظه فیزیکی مانند ترانزیستورها و خطوط انتقال، می توانند مقدار خود را در زمان های غیر ساعت حفظ کنند.
فلیپ فلاپ یک مدار دیجیتال است که می تواند یک بیت از داده را در خود ذخیره کند. فلیپ فلاپ از یک یا چند ورودی و یک خروجی تشکیل شده است. ورودی ها تعیین می کنند که مقدار خروجی فلیپ فلاپ در زمان بعدی چه خواهد بود.
فلیپ فلاپ ها انواع مختلفی دارند، از جمله:
- فلیپ فلاپ SR: فلیپ فلاپ SR از دو ورودی Set و Reset تشکیل شده است. ورودی Set باعث می شود که خروجی فلیپ فلاپ به 1 تغییر کند. ورودی Reset باعث می شود که خروجی فلیپ فلاپ به 0 تغییر کند.
- فلیپ فلاپ JK: فلیپ فلاپ JK از دو ورودی J و K تشکیل شده است. ورودی J و K می توانند به صورت مستقل یا به صورت ترکیبی با هم عمل کنند.
- فلیپ فلاپ D: فلیپ فلاپ D از یک ورودی D تشکیل شده است. ورودی D تعیین می کند که مقدار خروجی فلیپ فلاپ در زمان بعدی چه خواهد بود.
- فلیپ فلاپ T: فلیپ فلاپ T از یک ورودی T تشکیل شده است. ورودی T باعث می شود که خروجی فلیپ فلاپ در هر پالس ساعت به مقدار مخالف خود تغییر کند.
عناصر حافظه فیزیکی مانند ترانزیستورها و خطوط انتقال نیز می توانند مقدار خود را در زمان های غیر ساعت حفظ کنند. این امر به دلیل وجود ظرفیت خازنی در این عناصر است.
اهمیت مفهوم حافظه در مدارات ترتیبی
مفهوم حافظه در مدارات ترتیبی اهمیت زیادی دارد. این امر به این دلیل است که مدارات ترتیبی می توانند از عناصر حافظه برای ذخیره داده ها و اطلاعات استفاده کنند. این امر باعث می شود که مدارات ترتیبی بتوانند عملکردهای پیچیده تری را انجام دهند.
برای مثال، مدارات ترتیبی می توانند از عناصر حافظه برای ذخیره مقادیر شمارنده ها، حافظه ها و ثبات ها استفاده کنند. این امر باعث می شود که مدارات ترتیبی بتوانند برای انجام طیف گسترده ای از وظایف استفاده شوند.
ساختمان داخلی حافظه های ROM
حافظه های ROM (Read-Only Memory) حافظه هایی هستند که داده های ذخیره شده در آنها فقط قابل خواندن هستند و نمی توان آنها را تغییر داد. حافظه های ROM از عناصر حافظه فیزیکی مانند ترانزیستورها برای ذخیره داده ها استفاده می کنند.
ساختمان داخلی حافظه های ROM به نوع ترانزیستور مورد استفاده در آنها بستگی دارد. دو نوع اصلی حافظه ROM عبارتند از:
- ROM های ترانزیستور دوقطبی: ROM های ترانزیستور دوقطبی از ترانزیستورهای دوقطبی برای ذخیره داده ها استفاده می کنند. این نوع حافظه ROM نسبتاً قدیمی است و امروزه کمتر مورد استفاده قرار می گیرد.
- ROM های فلش: ROM های فلش از ترانزیستورهای فلش برای ذخیره داده ها استفاده می کنند. این نوع حافظه ROM نسبتاً جدید است و امروزه کاربرد بیشتری دارد.
ساختمان داخلی ROM های ترانزیستور دوقطبی
ساختمان داخلی ROM های ترانزیستور دوقطبی به صورت زیر است:
A B C D | Q
---|---|---|---|
0 0 0 0 | 0
0 0 0 1 | 1
0 0 1 0 | 0
0 0 1 1 | 1
... | ...
در این مدار، A، B، C و D ورودی های مدار هستند و Q خروجی مدار است. هر ورودی مدار به یک ترانزیستور دوقطبی متصل است. اگر ورودی A 0 باشد، ترانزیستور A روشن نمی شود و خروجی مدار 0 خواهد بود. اگر ورودی A 1 باشد، ترانزیستور A روشن می شود و خروجی مدار 1 خواهد بود.
به این ترتیب، با تنظیم ورودی های A، B، C و D می توان مقدار خروجی مدار را تعیین کرد.
ساختمان داخلی ROM های فلش
ساختمان داخلی ROM های فلش به صورت زیر است:
A B C D | Q
---|---|---|---|
0 0 0 0 | 0
0 0 0 1 | 1
0 0 1 0 | 0
0 0 1 1 | 1
... | ...
در این مدار، A، B، C و D ورودی های مدار هستند و Q خروجی مدار است. هر ورودی مدار به یک ترانزیستور فلش متصل است.
ترانزیستورهای فلش می توانند در دو حالت 0 و 1 قرار داشته باشند. برای تغییر حالت یک ترانزیستور فلش، باید آن را با یک پالس ولتاژ بالا به حالت 1 و با یک پالس ولتاژ پایین به حالت 0 تغییر داد.
به این ترتیب، با تنظیم ورودی های A، B، C و D می توان مقدار خروجی مدار را تعیین کرد.
مزایا و معایب حافظه های ROM
مزایا و معایب حافظه های ROM به صورت زیر است:
مزایا:
- سرعت بالا: حافظه های ROM می توانند با سرعت بالایی داده ها را ذخیره و بازیابی کنند.
- ماندگاری بالا: داده های ذخیره شده در حافظه های ROM ماندگار هستند و در صورت قطع برق از بین نمی روند.
معایب:
- قابلیت تغییرپذیری پایین: داده های ذخیره شده در حافظه های ROM را نمی توان تغییر داد.
- هزینه بالا: حافظه های ROM نسبتاً گران قیمت هستند.
کاربردهای حافظه های ROM
حافظه های ROM در بسیاری از کاربردها استفاده می شوند، از جمله:
- ذخیره کد برنامه: حافظه های ROM برای ذخیره کد برنامه در دستگاه های الکترونیکی مانند کامپیوترها، میکروکنترلرها و ریزپردازنده ها استفاده می شوند.
- ذخیره داده های ثابت: حافظه های ROM برای ذخیره داده های ثابت مانند جدول های جستجو، ثابت های ریاضی و توابع استفاده می شوند.
- ذخیره تنظیمات: حافظه های ROM برای ذخیره تنظیمات دستگاه های الکترونیکی مانند تنظیمات صفحه نمایش، تنظیمات صدا و تنظیمات شبکه استفاده می شوند.
چگونگی ذخیره کردن اطلاعات در ROM
ذخیره کردن اطلاعات در ROM به دو صورت انجام می شود:
در ROM های ترانزیستور دوقطبی: در ROM های ترانزیستور دوقطبی، اطلاعات با تنظیم وضعیت ترانزیستورها ذخیره می شوند. برای مثال، اگر بخواهیم مقدار 1 را در یک سلول ROM ذخیره کنیم، ترانزیستور آن سلول را روشن می کنیم. اگر بخواهیم مقدار 0 را در یک سلول ROM ذخیره کنیم، ترانزیستور آن سلول را خاموش می کنیم.
در ROM های فلش: در ROM های فلش، اطلاعات با تغییر حالت ترانزیستورهای فلش ذخیره می شوند. برای مثال، برای تغییر حالت یک ترانزیستور فلش به 1، باید آن را با یک پالس ولتاژ بالا تحریک کنیم. برای تغییر حالت یک ترانزیستور فلش به 0، باید آن را با یک پالس ولتاژ پایین تحریک کنیم.
در هر دو نوع ROM، اطلاعات پس از ذخیره شدن، ماندگار هستند و در صورت قطع برق از بین نمی روند.
ذخیره اطلاعات در ROM های ترانزیستور دوقطبی
ذخیره اطلاعات در ROM های ترانزیستور دوقطبی به صورت زیر انجام می شود:
- ابتدا، داده های مورد نظر را به صورت باینری به مدار ROM می دهیم.
- سپس، با استفاده از کنترل های مدار ROM، وضعیت ترانزیستورهای مدار را مطابق با داده های باینری تنظیم می کنیم.
- در نهایت، مدار ROM را بسته بندی می کنیم.
ذخیره اطلاعات در ROM های فلش
ذخیره اطلاعات در ROM های فلش به صورت زیر انجام می شود:
- ابتدا، داده های مورد نظر را به صورت باینری به مدار ROM می دهیم.
- سپس، با استفاده از کنترل های مدار ROM، حالت ترانزیستورهای فلش را مطابق با داده های باینری تغییر می دهیم.
- در نهایت، مدار ROM را بسته بندی می کنیم.
مزایای ذخیره اطلاعات در ROM
ذخیره اطلاعات در ROM مزایای زیر را دارد:
- ماندگاری بالا: داده های ذخیره شده در ROM ماندگار هستند و در صورت قطع برق از بین نمی روند.
- سرعت بالا: داده های ذخیره شده در ROM را می توان با سرعت بالایی بازیابی کرد.
- قابلیت اطمینان بالا: مدارهای ROM معمولاً از مدارهای RAM قابل اعتمادتر هستند.
معایب ذخیره اطلاعات در ROM
ذخیره اطلاعات در ROM معایب زیر را دارد:
- قابلیت تغییرپذیری پایین: داده های ذخیره شده در ROM را نمی توان تغییر داد.
- هزینه بالا: مدارهای ROM نسبتاً گران قیمت هستند.
بررسی تفاوت حافظه RAM و ROM
حافظه RAM و ROM دو نوع حافظه اصلی در رایانه ها هستند. حافظه RAM مخفف Random Access Memory به معنای حافظه دسترسی تصادفی است و حافظه ROM مخفف Read-Only Memory به معنای حافظه فقط خواندنی است.
تفاوت اصلی بین حافظه RAM و ROM در قابلیت خواندن و نوشتن داده ها است. حافظه RAM قابل نوشتن و قابل خواندن است، به این معنی که می توان داده ها را در آن ذخیره کرد و سپس آن ها را خواند. حافظه ROM فقط قابل خواندن است، به این معنی که می توان داده ها را در آن ذخیره کرد، اما نمی توان آن ها را تغییر داد.
تفاوت دیگر بین حافظه RAM و ROM در ماندگاری داده ها است. داده های ذخیره شده در حافظه RAM در صورت قطع برق از بین می روند. داده های ذخیره شده در حافظه ROM در صورت قطع برق باقی می مانند.
جدول زیر تفاوت های اصلی بین حافظه RAM و ROM را خلاصه می کند:
ویژگی | حافظه RAM | حافظه ROM |
---|---|---|
قابلیت خواندن و نوشتن | قابل خواندن و قابل نوشتن | فقط قابل خواندن |
ماندگاری داده ها | در صورت قطع برق از بین می رود | در صورت قطع برق باقی می ماند |
سرعت | سریع | کندتر |
قیمت | ارزان تر | گران تر |
کاربرد | ذخیره داده های موقت و در حال تغییر | ذخیره داده های ثابت و بدون تغییر |
کاربردهای حافظه RAM
حافظه RAM در بسیاری از کاربردها استفاده می شود، از جمله:
- ذخیره برنامه ها و داده های در حال اجرا: حافظه RAM برای ذخیره برنامه ها و داده هایی که در حال حاضر در حال اجرا هستند استفاده می شود.
- ذخیره نتایج محاسبات: حافظه RAM برای ذخیره نتایج محاسباتی استفاده می شود.
- ذخیره داده های موقت: حافظه RAM برای ذخیره داده هایی که فقط به صورت موقت مورد نیاز هستند استفاده می شود.
کاربردهای حافظه ROM
حافظه ROM در بسیاری از کاربردها استفاده می شود، از جمله:
- ذخیره کد برنامه: حافظه ROM برای ذخیره کد برنامه در دستگاه های الکترونیکی مانند کامپیوترها، میکروکنترلرها و ریزپردازنده ها استفاده می شود.
- ذخیره داده های ثابت: حافظه ROM برای ذخیره داده های ثابت مانند جدول های جستجو، ثابت های ریاضی و توابع استفاده می شود.
- ذخیره تنظیمات: حافظه ROM برای ذخیره تنظیمات دستگاه های الکترونیکی مانند تنظیمات صفحه نمایش، تنظیمات صدا و تنظیمات شبکه استفاده می شود.
EPROM چیست ؟
EPROM مخفف Erasable Programmable Read-Only Memory به معنای حافظه فقط خواندنی قابل پاکسازی با نور است. EPROM یک نوع حافظه ROM است که می توان آن را با استفاده از نور ماوراء بنفش پاک کرد و دوباره برنامه ریزی کرد.
EPROM از ترانزیستورهای فلش برای ذخیره داده ها استفاده می کند. ترانزیستورهای فلش می توانند در دو حالت 0 و 1 قرار داشته باشند. برای تغییر حالت یک ترانزیستور فلش، باید آن را با یک پالس ولتاژ بالا تحریک کنیم.
برای پاک کردن یک EPROM، باید آن را در معرض نور ماوراء بنفش قرار دهیم. نور ماوراء بنفش باعث می شود که ترانزیستورهای فلش در حالت 0 قرار بگیرند.
EPROM ها در بسیاری از کاربردها استفاده می شوند، از جمله:
- ذخیره کد برنامه: EPROM ها برای ذخیره کد برنامه در دستگاه های الکترونیکی مانند کامپیوترها، میکروکنترلرها و ریزپردازنده ها استفاده می شوند.
- ذخیره داده های ثابت: EPROM ها برای ذخیره داده های ثابت مانند جدول های جستجو، ثابت های ریاضی و توابع استفاده می شوند.
- ذخیره تنظیمات: EPROM ها برای ذخیره تنظیمات دستگاه های الکترونیکی مانند تنظیمات صفحه نمایش، تنظیمات صدا و تنظیمات شبکه استفاده می شوند.
مزایای EPROM
EPROM ها مزایای زیر را دارند:
- قابلیت پاک کردن و برنامه ریزی مجدد: EPROM ها را می توان به راحتی با استفاده از نور ماوراء بنفش پاک کرد و دوباره برنامه ریزی کرد.
- ماندگاری بالا: داده های ذخیره شده در EPROM ها در صورت قطع برق باقی می مانند.
- سرعت بالا: داده های ذخیره شده در EPROM ها را می توان با سرعت بالایی بازیابی کرد.
معایب EPROM
EPROM ها معایب زیر را دارند:
- حساسیت به نور ماوراء بنفش: EPROM ها باید در برابر نور ماوراء بنفش محافظت شوند.
- هزینه بالا: EPROM ها نسبتاً گران قیمت هستند.
جایگزین های EPROM
در سال های اخیر، حافظه های EEPROM و Flash جایگزین EPROM شده اند. حافظه های EEPROM و Flash از لحاظ عملکرد و قیمت نسبت به EPROM برتر هستند.
EEPROM چیست ؟
EEPROM مخفف Electrically Erasable Programmable Read-Only Memory به معنای حافظه فقط خواندنی قابل پاکسازی به صورت الکتریکی است. EEPROM یک نوع حافظه ROM است که می توان آن را با استفاده از یک جریان الکتریکی پاک کرد و دوباره برنامه ریزی کرد.
EEPROM از ترانزیستورهای فلش برای ذخیره داده ها استفاده می کند. ترانزیستورهای فلش می توانند در دو حالت 0 و 1 قرار داشته باشند. برای تغییر حالت یک ترانزیستور فلش، باید آن را با یک پالس ولتاژ بالا تحریک کنیم.
برای پاک کردن یک EEPROM، باید آن را با استفاده از یک جریان الکتریکی بالا به مدت مشخصی تحریک کنیم. این جریان الکتریکی باعث می شود که ترانزیستورهای فلش در حالت 0 قرار بگیرند.
EEPROM ها مزایای زیر را نسبت به EPROM دارند:
- عدم نیاز به نور ماوراء بنفش: EEPROM ها نیازی به نور ماوراء بنفش ندارند و می توان آنها را در هر محیطی پاک کرد.
- سرعت بالاتر: EEPROM ها را می توان با سرعت بالاتری نسبت به EPROM ها پاک کرد.
- هزینه کمتر: EEPROM ها نسبت به EPROM ها ارزان تر هستند.
EEPROM ها در بسیاری از کاربردها استفاده می شوند، از جمله:
- ذخیره کد برنامه: EEPROM ها برای ذخیره کد برنامه در دستگاه های الکترونیکی مانند کامپیوترها، میکروکنترلرها و ریزپردازنده ها استفاده می شوند.
- ذخیره داده های ثابت: EEPROM ها برای ذخیره داده های ثابت مانند جدول های جستجو، ثابت های ریاضی و توابع استفاده می شوند.
- ذخیره تنظیمات: EEPROM ها برای ذخیره تنظیمات دستگاه های الکترونیکی مانند تنظیمات صفحه نمایش، تنظیمات صدا و تنظیمات شبکه استفاده می شوند.
فصل هفت مدار منطقی
شیفت دادن در مدار منطقی یعنی چه ؟
در مدارهای منطقی، شیفت دادن به معنای انتقال یک بیت داده از یک مکان به مکان دیگر است. شیفت دادن می تواند به صورت چپ یا راست انجام شود.
برای شیفت دادن یک بیت داده به سمت چپ، مقدار بیت داده به اولین بیت بعدی منتقل می شود و آخرین بیت با مقدار صفر جایگزین می شود. برای مثال، اگر بیت داده 1 را به سمت چپ شیفت دهیم، مقدار جدید 10 خواهد بود.
برای شیفت دادن یک بیت داده به سمت راست، مقدار بیت داده به آخرین بیت منتقل می شود و اولین بیت با مقدار صفر جایگزین می شود. برای مثال، اگر بیت داده 1 را به سمت راست شیفت دهیم، مقدار جدید 01 خواهد بود.
شیفت دادن در مدارهای منطقی کاربردهای مختلفی دارد، از جمله:
- ذخیره داده ها: شیفت دادن می تواند برای ذخیره داده ها در حافظه استفاده شود.
- محاسبات: شیفت دادن می تواند برای انجام محاسبات مانند ضرب و تقسیم استفاده شود.
- کنترل: شیفت دادن می تواند برای کنترل دستگاه های الکترونیکی استفاده شود.
انواع شیفت دادن در مدارهای منطقی
در مدارهای منطقی، دو نوع شیفت دادن وجود دارد:
- شیفت دادن سریال: در شیفت دادن سریال، داده ها به صورت یک بیت در یک زمان منتقل می شوند.
- شیفت دادن موازی: در شیفت دادن موازی، داده ها به صورت تمام بیت ها در یک زمان منتقل می شوند.
شیفت دادن سریال
در شیفت دادن سریال، داده ها به صورت یک بیت در یک زمان از طریق یک خط داده منتقل می شوند. برای هر پالس ساعت، یک بیت داده از طریق خط داده منتقل می شود.
شیفت دادن موازی
در شیفت دادن موازی، داده ها به صورت تمام بیت ها در یک زمان از طریق چندین خط داده منتقل می شوند. برای هر پالس ساعت، تمام بیت های داده از طریق خطوط داده منتقل می شوند.
نمونه هایی از شیفت دادن در مدارهای منطقی
در مدارهای منطقی، شیفت دادن در بسیاری از کاربردها استفاده می شود. در اینجا چند نمونه از شیفت دادن در مدارهای منطقی آورده شده است:
- ذخیره داده ها: در بسیاری از دستگاه های الکترونیکی، داده ها در حافظه های شیفت ذخیره می شوند. حافظه های شیفت می توانند داده ها را به صورت سریال یا موازی ذخیره کنند.
- محاسبات: شیفت دادن می تواند برای انجام محاسبات مانند ضرب و تقسیم استفاده شود. برای مثال، برای ضرب دو عدد، می توان از شیفت دادن برای جابه جا کردن بیت های عدد دوم استفاده کرد.
- کنترل: شیفت دادن می تواند برای کنترل دستگاه های الکترونیکی استفاده شود. برای مثال، می توان از شیفت دادن برای کنترل موقعیت یک موتور استفاده کرد.
شیفت رجیستر
شیفت رجیستر یک مدار منطقی است که برای انجام عملیات شیفت دادن استفاده می شود. شیفت رجیستری از چندین فلیپ فلاپ تشکیل شده است. هر فلیپ فلاپ یک بیت از داده را ذخیره می کند.
شیفت رجیستری ها می توانند برای انجام شیفت دادن سریال یا موازی استفاده شوند. برای شیفت دادن سریال، داده ها از طریق یک خط داده به شیفت رجیستر منتقل می شوند. برای شیفت دادن موازی، داده ها از طریق چندین خط داده به شیفت رجیستر منتقل می شوند.
شیفت منطقی در مدار منطقی
شیفت منطقی در مدار منطقی، عملیاتی است که در آن یک بیت داده از یک مکان به مکان دیگر منتقل میشود. این عملیات میتواند به صورت چپ یا راست انجام شود.
برای شیفت دادن یک بیت داده به سمت چپ، مقدار بیت داده به اولین بیت بعدی منتقل میشود و آخرین بیت با مقدار صفر جایگزین میشود. به عنوان مثال، اگر بیت داده 1 را به سمت چپ شیفت دهیم، مقدار جدید 10 خواهد بود.
برای شیفت دادن یک بیت داده به سمت راست، مقدار بیت داده به آخرین بیت منتقل میشود و اولین بیت با مقدار صفر جایگزین میشود. به عنوان مثال، اگر بیت داده 1 را به سمت راست شیفت دهیم، مقدار جدید 01 خواهد بود.
شیفت منطقی سریال
در شیفت منطقی سریال، دادهها به صورت یک بیت در یک زمان از طریق یک خط داده منتقل میشوند. برای هر پالس ساعت، یک بیت داده از طریق خط داده منتقل میشود.
شیفت منطقی موازی
در شیفت منطقی موازی، دادهها به صورت تمام بیتها در یک زمان از طریق چندین خط داده منتقل میشوند. برای هر پالس ساعت، تمام بیتهای داده از طریق خطوط داده منتقل میشوند.
نمونههایی از شیفت منطقی در مدارهای منطقی
در مدارهای منطقی، شیفت منطقی در بسیاری از کاربردها استفاده میشود. در اینجا چند نمونه از شیفت منطقی در مدارهای منطقی آورده شده است:
- ذخیره دادهها: در بسیاری از دستگاههای الکترونیکی، دادهها در حافظههای شیفت ذخیره میشوند. حافظههای شیفت میتوانند دادهها را به صورت سریال یا موازی ذخیره کنند.
- محاسبات: شیفت منطقی میتواند برای انجام محاسبات مانند ضرب و تقسیم استفاده شود. برای مثال، برای ضرب دو عدد، میتوان از شیفت منطقی برای جابهجایی بیتهای عدد دوم استفاده کرد.
- کنترل: شیفت منطقی میتواند برای کنترل دستگاههای الکترونیکی استفاده شود. برای مثال، میتوان از شیفت منطقی برای کنترل موقعیت یک موتور استفاده کرد.
شیفت رجیستر
شیفت رجیستر یک مدار منطقی است که برای انجام عملیات شیفت منطقی استفاده میشود. شیفت رجیستر از چندین فلیپ فلاپ تشکیل شده است. هر فلیپ فلاپ یک بیت از داده را ذخیره میکند.
شیفت رجیسترها میتوانند برای انجام شیفت منطقی سریال یا موازی استفاده شوند. برای شیفت منطقی سریال، دادهها از طریق یک خط داده به شیفت رجیستر منتقل میشوند. برای شیفت منطقی موازی، دادهها از طریق چندین خط داده به شیفت رجیستر منتقل میشوند.
شیفت منطقی در مدارهای دیجیتال
در مدارهای دیجیتال، شیفت منطقی با استفاده از گیتهای منطقی
شیفت حسابی در مدار منطقی
شیفت حسابی در مدار منطقی، عملیاتی است که در آن یک بیت داده از یک مکان به مکان دیگر منتقل میشود و مقدار بیت علامت حفظ میشود. این عملیات میتواند به صورت چپ یا راست انجام شود.
برای شیفت دادن یک بیت داده به سمت چپ، مقدار بیت داده به اولین بیت بعدی منتقل میشود و آخرین بیت با مقدار بیت علامت جایگزین میشود. به عنوان مثال، اگر بیت داده 1 را به سمت چپ شیفت حسابی دهیم، مقدار جدید 10 خواهد بود.
برای شیفت دادن یک بیت داده به سمت راست، مقدار بیت داده به آخرین بیت منتقل میشود و اولین بیت با مقدار بیت علامت جایگزین میشود. به عنوان مثال، اگر بیت داده 1 را به سمت راست شیفت حسابی دهیم، مقدار جدید 01 خواهد بود.
شیفت حسابی در مدارهای منطقی کاربردهای مختلفی دارد، از جمله:
- ذخیره دادهها: شیفت حسابی میتواند برای ذخیره دادهها در حافظه استفاده شود.
- محاسبات: شیفت حسابی میتواند برای انجام محاسبات مانند ضرب و تقسیم استفاده شود.
- کنترل: شیفت حسابی میتواند برای کنترل دستگاههای الکترونیکی استفاده شود.
تفاوت شیفت منطقی و شیفت حسابی
تفاوت اصلی شیفت منطقی و شیفت حسابی در این است که در شیفت منطقی، مقدار بیت علامت حفظ نمیشود، اما در شیفت حسابی، مقدار بیت علامت حفظ میشود.
در شیفت منطقی، اگر بیت داده 1 باشد، پس از شیفت، مقدار بیت داده 1 خواهد بود. اما در شیفت حسابی، اگر بیت داده 1 باشد، پس از شیفت، مقدار بیت داده 1 باقی میماند.
نمونههایی از شیفت حسابی در مدارهای منطقی
در مدارهای منطقی، شیفت حسابی در بسیاری از کاربردها استفاده میشود. در اینجا چند نمونه از شیفت حسابی در مدارهای منطقی آورده شده است:
- ذخیره دادهها: در بسیاری از دستگاههای الکترونیکی، دادهها در حافظههای شیفت حسابی ذخیره میشوند. حافظههای شیفت حسابی میتوانند دادهها را به صورت سریال یا موازی ذخیره کنند.
- محاسبات: شیفت حسابی میتواند برای انجام محاسبات مانند ضرب و تقسیم استفاده شود. برای مثال، برای ضرب دو عدد، میتوان از شیفت حسابی برای جابهجایی بیتهای عدد دوم استفاده کرد.
- کنترل: شیفت حسابی میتواند برای کنترل دستگاههای الکترونیکی استفاده شود. برای مثال، میتوان از شیفت حسابی برای کنترل موقعیت یک موتور استفاده کرد.
شیفت رجیستر حسابی
شیفت رجیستر حسابی یک مدار منطقی است که برای انجام عملیات شیفت حسابی استفاده میشود. شیفت رجیستر حسابی از چندین فلیپ فلاپ تشکیل شده است. هر فلیپ فلاپ یک بیت از داده را ذخیره میکند.
شیفت رجیسترهای حسابی میتوانند برای انجام شیفت حسابی سریال یا موازی استفاده شوند. برای شیفت حسابی سریال، دادهها از طریق یک خط داده به شیفت رجیستر حسابی منتقل میشوند. برای شیفت حسابی موازی، دادهها از طریق چندین خط داده به شیفت رجیستر حسابی منتقل میشوند.
سنکرون و آسنکرون چیست ؟
در مدارهای الکترونیکی، سنکرون و آسنکرون دو نوع سیگنال هستند که با توجه به نحوه ارتباط آنها با یکدیگر تعریف می شوند.
سنکرون
یک سیگنال سنکرون، سیگنالی است که فرکانس و فاز آن با سیگنال دیگری مرتبط است. این سیگنال دیگر معمولاً یک سیگنال ساعت است. سیگنال ساعت یک سیگنال منظم است که برای هماهنگ کردن عملکرد سایر سیگنال ها استفاده می شود.
در یک مدار سنکرون، همه سیگنال ها با سیگنال ساعت هماهنگ می شوند. این بدان معناست که همه سیگنال ها در زمان های مشخصی تغییر می کنند. این امر باعث می شود که مدارها کارآمدتر و قابل پیش بینی تر باشند.
آسنکرون
یک سیگنال آسنکرون، سیگنالی است که فرکانس و فاز آن با سیگنال دیگری مرتبط نیست. این سیگنال ها مستقل از یکدیگر کار می کنند.
در یک مدار آسنکرون، سیگنال ها با یکدیگر هماهنگ نیستند. این بدان معناست که سیگنال ها ممکن است در زمان های مختلف تغییر کنند. این امر می تواند باعث ایجاد مشکلاتی در عملکرد مدار شود.
تفاوت سنکرون و آسنکرون
تفاوت اصلی بین سنکرون و آسنکرون در نحوه ارتباط آنها با یکدیگر است. سیگنال های سنکرون با سیگنال ساعت هماهنگ هستند، در حالی که سیگنال های آسنکرون مستقل از یکدیگر کار می کنند.
کاربردهای سنکرون و آسنکرون
سیگنال های سنکرون در بسیاری از کاربردها استفاده می شوند، از جمله:
- پردازش داده ها: سیگنال های سنکرون برای هماهنگ کردن عملکرد پردازنده ها و سایر دستگاه های پردازش داده استفاده می شوند.
- کنترل: سیگنال های سنکرون برای کنترل دستگاه های مکانیکی و الکترونیکی استفاده می شوند.
- انتقال داده ها: سیگنال های سنکرون برای انتقال داده ها در شبکه ها استفاده می شوند.
سیگنال های آسنکرون نیز در برخی از کاربردها استفاده می شوند، از جمله:
- ارتباطات: سیگنال های آسنکرون برای انتقال داده ها در شبکه های بی سیم استفاده می شوند.
- کنترل: سیگنال های آسنکرون برای کنترل دستگاه های مکانیکی و الکترونیکی که نیاز به پاسخ سریع دارند استفاده می شوند.
نمونه هایی از سیگنال های سنکرون و آسنکرون
در اینجا چند نمونه از سیگنال های سنکرون و آسنکرون آورده شده است:
- سیگنال ساعت در یک پردازنده: این یک سیگنال سنکرون است که برای هماهنگ کردن عملکرد پردازنده استفاده می شود.
- سیگنال داده در یک شبکه: این یک سیگنال سنکرون است که برای انتقال داده ها در شبکه استفاده می شود.
- سیگنال کنترل در یک موتور: این یک سیگنال آسنکرون است که برای کنترل سرعت و جهت موتور استفاده می شود.
- سیگنال بی سیم: این یک سیگنال آسنکرون است که برای انتقال داده ها در شبکه های بی سیم استفاده می شود.