دیجیتال دیزاین به سبک تِرِد دیجیتال دیزاین به سبک تِرِد



شما این تِرِد رو مطالعه کردید آفرین.🍻
اوپس: تصویر 502
ایلیا 1405/5/29

کامپیوتر فقط ۰ و ۱ می‌فهمد؟ آموزش و یادگیری کامپیوتر فقط ۰ و ۱ می‌فهمد؟ به صورت رایگان

ایجاد شهود درباره داده دیجیتال، بیت و سیستم‌ های دیجیتال

سلام! قبل از اینکه شروع کنم باید بهتون بگم که قراره توی صفرمین فازمون یه مقدار زیاد بخونید تا با مسیر و کاری که میخوایم بکنیم بیشتر آشنا بشین پس لطفا با من همراه باشین و بدونید که زود تموم میشه خیالتون راحت!!!!!!!

بزن بریم!!

خب… حالا که فهمیدیم قراره این سفر رو از پایین‌ترین لایه‌های سخت‌افزار شروع کنیم، بریم سراغ اولین سؤال:

کامپیوتر اصلاً اطلاعات رو چطور نمایش می‌ده؟

احتمالاً این جمله رو زیاد شنیدی:

«کامپیوتر فقط ۰ و ۱ می‌فهمه».
ولی... این جمله دقیقاً یعنی چی؟

فرض کن…

روی کیبوردت حرف A رو فشار می‌دی.
یا یک عکس باز می‌کنی.
یا آهنگ پخش می‌کنی.
یا یک فیلم می‌بینی.
یا حتی یک بازی اجرا می‌کنی.

این‌ها برای ما کاملاً متفاوتن.
یکی حرفه، یکی تصویره، یکی صداست و یکی هم یک برنامه‌ست.

ولی کامپیوتر باید به نحوی که بتونه همه‌ی این‌ها رو پردازش کنه.

مشکل اینجاست که سخت‌افزار دیجیتال در پایین‌ترین سطحش با تعداد خیلی کمی وضعیت مشخص کار می‌کنه.
و ما برای نمایش این وضعیت‌ها از:

0 , 1
استفاده می‌کنیم.

ولی چرا فقط ۰ و ۱؟ 🤔

چون تشخیص دادن بین دو وضعیت مشخص برای سخت‌افزار خیلی ساده‌تر و قابل‌اعتمادتره.

مثلاً به‌صورت خیلی ساده:

0 → Low
1 → High

یا اگر بخوایم شهودی نگاه کنیم:

۰ → خاموش
۱ → روشن

البته این «خاموش و روشن» بودن، توضیح دقیقی برای همه‌ شرایط نیست.
در سخت‌ افزار واقعی، این دو وضعیت با محدوده‌ هایی از ولتاژ و جریان و رفتار ترانزیستور ها پیاده‌ سازی میشن.

پس وقتی میگیم:

کامپیوتر با ۰ و ۱ کار می‌کنه!!!!

منظورمون این نیست که داخل CPU واقعاً یه بیکار نشسته و 0 و 1 محاسبه میکنه! 😄
بلکه یعنی ما میتونیم وضعیت‌ های فیزیکی مختلف سخت‌ افزار رو با یک نمایش ساده‌ دودویی مدل کنیم.


خب با دو حالت چه کاری می‌شه کرد؟

یه سؤال ساده:

اگر فقط یک رقم دودویی داشته باشیم، چند حالت داریم؟طبیعتا 0 یا 1

پس: ۲ حالت

حالا اگر دو رقم داشته باشیم:

00
01
10
11

میشه: ۴ حالت

سه رقم؟

000
001
010
011
100
101
110
111

میشه: ۸ حالت

یعنی هر بار که یک بیت دیگه اضافه می‌کنیم، تعداد حالت‌های ممکن دو برابر میشه.

مثلاً ۸ بیت:
۲۵۶ حالت مختلف

و این دیگه فقط دو تا وضعیت ساده نیست.
با تعداد زیادی بیت می‌تونیم اطلاعات خیلی متنوعی رو نمایش بدیم.

یکم بیشتر بدونید

پس عکس و صدا و متن چی می‌شن؟ 🤔

اینجا یک ایده‌ خیلی مهم داریم:

کامپیوتر لازم نیست خودِ اطلاعات رو مثل ما ببینه.
کافیه برای هر نوع اطلاعات یک روش نمایش داشته باشیم.

مثلاً: ‭

Letter A → a number → Binary → 1 and 0

یا یک پیکسل:

Color → numerical value → Binary → 1 and 0

یا صدا:

Audio sample → numerical value → Binary → 1 and 0

پس در نهایت:

نمایش دودویی → نمایش عددی → اطلاعات مختلف
البته روش دقیق نمایش هرکدوم داستان خودش رو داره که جلوتر بهشون میرسیم.

حالا قسمت جذاب ماجرا شروع میشه…

تا اینجا فهمیدیم که می‌تونیم اطلاعات رو با ۰ و ۱ نمایش بدیم.
اما هنوز یک مشکل داریم: چطور با این ۰ و ۱ها کاری انجام بدیم؟

مثلاً:

5 + 7

چطور با ۰ و ۱ محاسبه میشه؟

یا اگر بخوایم بگیم:

«اگر A روشن بود و B هم روشن بود، خروجی روشن شود.»

چطور این رفتار رو بسازیم؟


اینجا وارد دنیای منطق دیجیتال میشیم

و اولین چیزی که باهاش آشنا خواهیم شد:

Logic Gate

گیت منطقی در ساده‌ترین تعریف، مداریه که یک یا چند ورودی میگیره و بر اساس یک قانون مشخص، یک خروجی تولید میکنه.

مثلاً:

A ──┐
    AND → Y
B ──┘

این مدار فقط وقتی خروجی ۱ میده که هر دو ورودی ۱ باشن.

یعنی:

0 AND 0 → 0
0 AND 1 → 0
1 AND 0 → 0
1 AND 1 → 1

همین مفهوم به‌ظاهر ساده، یکی از آجرهای اصلی چیزهای بسیار پیچیده‌تره.

از همین‌جا کم‌کم می‌رسیم به:

Gate → Circuit → Adder → ALU → ...

ولی فعلاً عجله نکنیم.

نکته
(هنوز نیاز نیست چیزی یاد بگیرید صرفاً دارم نشونت میدم تا توی ذهنت جا خوش کنه رفیق)


یک نکته مهم

از این Thread به بعد، وقتی درباره‌ی ۰ و ۱ حرف می‌زنیم، بهتره این تصویر توی ذهنت باشه:

صفر و یک، روشی برای نمایش دو وضعیت قابل تشخیص در یک سیستم دیجیتال هستن
این نگاه بعداً وقتی برسیم به گیت‌ها، مدارها، Flip-Flop ها و حافظه خیلی به دردمون می‌خوره.

با این داداشت همراه باش!!

شماره تِرِد : شماره 1 از 3

نظرات