⚙️زبانی که مستقیماً با سختافزار حرف میزند: Assembly
قبل از پایتون، جاوا و ++C، یه زبان وجود داشت که هنوز هم قلب همهچیزه:
Assembly Language 🧠
💾 اسمبلی چی هست؟
زبانیه که مستقیماً با CPU ارتباط داره.
هر دستور اون تقریباً معادل یه دستور ماشین (Machine Code)ه، ولی بهجای صفر و یک، با نمادهای قابلخواندن نوشته میشه.
مثلاً:
Asm
یعنی مقدار ۵ رو در AX بریز، بعد ۳ تا بهش اضافه کن.
⚡همون کاری که CPU دقیقاً انجام میده
🔧 ویژگیها:
🧩 چرا هنوز مهمه؟
چون فهم Assembly یعنی فهمیدن چطور نرمافزار واقعاً روی سختافزار اجرا میشه.
برنامهنویسهایی که Assembly بلدن،
درک عمیقتری از performance، memory و معماری CPU دارن.
#Ai #programming
Channel | Group
قبل از پایتون، جاوا و ++C، یه زبان وجود داشت که هنوز هم قلب همهچیزه:
Assembly Language 🧠
💾 اسمبلی چی هست؟
زبانیه که مستقیماً با CPU ارتباط داره.
هر دستور اون تقریباً معادل یه دستور ماشین (Machine Code)ه، ولی بهجای صفر و یک، با نمادهای قابلخواندن نوشته میشه.
مثلاً:
Asm
MOV AX, 5
ADD AX, 3
یعنی مقدار ۵ رو در AX بریز، بعد ۳ تا بهش اضافه کن.
⚡همون کاری که CPU دقیقاً انجام میده
🔧 ویژگیها:
🚀فوقالعاده سریع
🤝وابسته به نوع پردازنده (Intel، ARM و...)
💣خطا در اون میتونه کل سیستم رو مختل کنه
🔧برای ساخت کرنل، بوتلودر و بخشهای پایینسطح سیستم استفاده میشه.
🧩 چرا هنوز مهمه؟
چون فهم Assembly یعنی فهمیدن چطور نرمافزار واقعاً روی سختافزار اجرا میشه.
برنامهنویسهایی که Assembly بلدن،
درک عمیقتری از performance، memory و معماری CPU دارن.
#Ai #programming
Channel | Group
❤10⚡2👍1
🧩 از کد انسان تا زبان CPU
🔢وقتی برنامهای مینویسیم، اون مستقیماً برای CPU قابل فهم نیست.
باید چند لایه ترجمه بشه تا به زبان باینری برسه — زبانی که تنها CPU میفهمه
🔹 High-Level Language (زبان سطح بالا)
🔹 Low-Level Representation (زبان سطح پایین)
🔹 Machine Code (باینری)
✨ خلاصه:
هر چی پایینتر میریم، زبان کمتر شبیه فکر انسان میشه و بیشتر شبیه منطق دقیق ماشین
#Programming
Channel | Group
🔢وقتی برنامهای مینویسیم، اون مستقیماً برای CPU قابل فهم نیست.
باید چند لایه ترجمه بشه تا به زبان باینری برسه — زبانی که تنها CPU میفهمه
🔹 High-Level Language (زبان سطح بالا)
مثل Python یا C++ — قابل درک برای انسان
⬇️ ترجمه توسط Compiler / Assembler
🔹 Low-Level Representation (زبان سطح پایین)
مثل Assembly — نزدیکتر به سختافزار
⬇️ تبدیل به دستورهای واقعی CPU
🔹 Machine Code (باینری)
فقط صفر و یک و CPU همین رو اجرا میکنه — بدون هیچ درکی از منطق انسانی
✨ خلاصه:
هر چی پایینتر میریم، زبان کمتر شبیه فکر انسان میشه و بیشتر شبیه منطق دقیق ماشین
#Programming
Channel | Group
❤12
🎭 6 فیلم برتر درباره برنامه نویسی✨
🧠 یکی از کارهایی که باعث میشه نگرش و دیدگاه ما شبیه یه برنامه نویس خفن بشه دیدن فیلم هستش .
#programming
Channel | Group
🧠 یکی از کارهایی که باعث میشه نگرش و دیدگاه ما شبیه یه برنامه نویس خفن بشه دیدن فیلم هستش .
قرار نیست روزی یک فیلم ببینید، هفته ای یه دونه ببینید ولی سعی کنید هم لذت ببرید هم فیلم رو تحلیل کنید.
(با تحلیل فیلم خیلی ذهن پویا و خلاقی پیدا میکنیم :)
#programming
Channel | Group
❤11
🧠الگوریتم، مدل، داده__کدومش مغز هوش مصنوعیه؟
بیشتر آدما فکر میکنن اگر فقط حجم زیادی از داده هارو در دسترس داشته باشیم هوش مصنوعی خود به خود شکل میگیره. اما واقعیت اینه که :
📈الگوریتم ها قوانین و دستورالعمل های مشخصی هستن که میگن مدل هوش مصنوعی چطور داده هارو پردازش کنه.
🤖مدل ها نتیجه آموزش الگوریتم روی داده ها هستن.__ مغز آموزش دیدهی Ai
📚داده ها مثل مواد اولین ؛ بدون اونا هیچی آموزش داده نمیشه.
چرا این تفاوت مهمه؟🧐
✔️چون فقط داشتن داده(مثل میلیون ها عکس) بدون الگوریتم درست، به خروجی مفید نمیرسه.
✔️چون مدل نهایی وابستست به ساختار داده و اینکه الگوریتم چطور یاد بگیره.
✔️چون وقتی میخوای هوش مصنوعی بسازی، باید بدونی به چه ترکیبی از اینها نیاز داری.
🧩 اگر داده ها مواد اولیه باشن، مدل هم غذای آماده؛ پس آشپز کیه؟ توی دنیای هوش مصنوعی آشپز خوب بودن یعنی ساختن آینده. نظر شما چیه؟
#ai #fact
Channel | Group
بیشتر آدما فکر میکنن اگر فقط حجم زیادی از داده هارو در دسترس داشته باشیم هوش مصنوعی خود به خود شکل میگیره. اما واقعیت اینه که :
📈الگوریتم ها قوانین و دستورالعمل های مشخصی هستن که میگن مدل هوش مصنوعی چطور داده هارو پردازش کنه.
🤖مدل ها نتیجه آموزش الگوریتم روی داده ها هستن.__ مغز آموزش دیدهی Ai
📚داده ها مثل مواد اولین ؛ بدون اونا هیچی آموزش داده نمیشه.
📌مثال ساده
فرض کنید:
داده ها=مواد اولیه
الگوریتم= دستور پخت
مدل=غذای آماده
چرا این تفاوت مهمه؟🧐
✔️چون فقط داشتن داده(مثل میلیون ها عکس) بدون الگوریتم درست، به خروجی مفید نمیرسه.
✔️چون مدل نهایی وابستست به ساختار داده و اینکه الگوریتم چطور یاد بگیره.
✔️چون وقتی میخوای هوش مصنوعی بسازی، باید بدونی به چه ترکیبی از اینها نیاز داری.
🧩 اگر داده ها مواد اولیه باشن، مدل هم غذای آماده؛ پس آشپز کیه؟ توی دنیای هوش مصنوعی آشپز خوب بودن یعنی ساختن آینده. نظر شما چیه؟
#ai #fact
Channel | Group
Telegram
کافه برنامه نویسان | 𝗣𝗿𝗼𝗴𝗿𝗮𝗺𝗲𝗿s 𝗖𝗮𝗳𝗲
👈 اینجا جایی است که یاد میگیریم و ایدههایمان را به واقعیت تبدیل میکنیم و در نهایت با هم رشد میکنیم✨
💬 Group : @IRdeveloperchat
تبادل / تبلیغات : @ProgramersCafeSup 🫴
♂️ مالک : @Ali_Rohany ♂️
💬 Group : @IRdeveloperchat
تبادل / تبلیغات : @ProgramersCafeSup 🫴
♂️ مالک : @Ali_Rohany ♂️
❤13
☑️ الگوریتم و فلوچارت — پایهایترین مفاهیم دنیای برنامهنویسی✨
📓 1. الگوریتم (Algorithm) چیه؟
مثل یه دستور آشپزی 🍳 برای کامپیوتر!
هر الگوریتم باید :
🔘 ورودی بگیره
🔘 مراحلی مشخص و قابلاجرا داشته باشه
🔘 در نهایت خروجی بده
🔘 و بعد از چند مرحله تموم بشه
🧩 2. فلوچارت (Flowchart) چیه؟
یعنی همون مراحلی که تو الگوریتم گفتی، با شکل و فلش نشون داده میشن تا فهمش راحتتر شه.
🔘 دایره بیضی »» شروع / پایان
🔘 مستطیل »» مرحله یا دستور
🔘 لوزی »» تصمیم (شرط if / else)
🔘 فلشها »» مسیر اجرای برنامه
📊 فلوچارت باعث میشه روند اجرای کدت رو بصری ببینی و راحتتر خطاها رو پیدا کنی.
#programming #Flowchart
Channel | Group
📓 1. الگوریتم (Algorithm) چیه؟
الگوریتم یعنی یه دستور مرحلهبهمرحله برای حل یه مسئله خاص.
مثل یه دستور آشپزی 🍳 برای کامپیوتر!
هر الگوریتم باید :
🔘 ورودی بگیره
🔘 مراحلی مشخص و قابلاجرا داشته باشه
🔘 در نهایت خروجی بده
🔘 و بعد از چند مرحله تموم بشه
🧩 2. فلوچارت (Flowchart) چیه؟
فلوچارت در واقع یه نمودار تصویری از الگوریتمه 🎨
یعنی همون مراحلی که تو الگوریتم گفتی، با شکل و فلش نشون داده میشن تا فهمش راحتتر شه.
🔘 دایره بیضی »» شروع / پایان
🔘 مستطیل »» مرحله یا دستور
🔘 لوزی »» تصمیم (شرط if / else)
🔘 فلشها »» مسیر اجرای برنامه
📊 فلوچارت باعث میشه روند اجرای کدت رو بصری ببینی و راحتتر خطاها رو پیدا کنی.
📚 منابع :
Lucidchart – What is a Flowchart - GeeksforGeeks – Introduction to Algorithms -
#programming #Flowchart
Channel | Group
❤10👍2
🔰 سیستم های عدد نویسی بر اساس شمارش مبناهای متفاوت دستهبندی میشوند.
○ برای مثال :
در سیستم عدد نویسی 8، مبنای عدد 8 است و مجموعه ارقام مجموعه 0 تا 7 است.
همچنین در سیستم عدد نویسی 2 مبنای عدد 2 است و مجموعه ارقام آن 0 و 1 است.
✨️ انواع سیستم های عدد نویسی (مَبناها):
● دودویی یا باینری (2): 0,1
● هشت هشتی یا اوکتال (8): 0 تا 7
● دهدهی یا دِسیمال (10): 0 تا 9
● شانزده شانزدهی یا هِگزا دِسیمال (16): 0 تا 15
#programming
Channel | Group
هر سیستم عدد نویسی، شامل یک عدد پایه یا مبنا و مجموعهای از ارقام به تعداد عدد مبنا است.
○ برای مثال :
در سیستم عدد نویسی 8، مبنای عدد 8 است و مجموعه ارقام مجموعه 0 تا 7 است.
همچنین در سیستم عدد نویسی 2 مبنای عدد 2 است و مجموعه ارقام آن 0 و 1 است.
✨️ انواع سیستم های عدد نویسی (مَبناها):
● دودویی یا باینری (2): 0,1
● هشت هشتی یا اوکتال (8): 0 تا 7
● دهدهی یا دِسیمال (10): 0 تا 9
● شانزده شانزدهی یا هِگزا دِسیمال (16): 0 تا 15
#programming
Channel | Group
❤7👍2
🎯 چه زمانی باید از فلوچارت استفاده کنیم؟
در پروژههای بزرگ برنامهنویسی، فلوچارت فقط یک ابزار آموزشی نیست — یه نقشهی حیاتی برای جلوگیری از سردرگمیه.
اما دقیقاً کی باید ازش استفاده کنیم؟
🔹 1. هنگام طراحی الگوریتمهای پیچیده
🔹 2. قبل از شروع تیمکدنویسی
🔹 3. موقع دیباگ و بهینهسازی کد
🔹 4. وقتی قراره کد مستندسازی بشه
🧠 خلاصهی ماجرا:
هر وقت منطق برنامه طولانی، چندشاخه، یا تیمی باشه — فلوچارت تبدیل میشه به بهترین دوستت.
#Programming #Flowchart
Channel | Group
در پروژههای بزرگ برنامهنویسی، فلوچارت فقط یک ابزار آموزشی نیست — یه نقشهی حیاتی برای جلوگیری از سردرگمیه.
اما دقیقاً کی باید ازش استفاده کنیم؟
🔹 1. هنگام طراحی الگوریتمهای پیچیده
وقتی مسیر تصمیمگیری و شاخههای زیاد داری، فلوچارت کمک میکنه جریان منطقی برنامه رو قبل از نوشتن حتی یک خط کد ببینی.
🔹 2. قبل از شروع تیمکدنویسی
در تیمهای بزرگ، همه باید بدونن منطق اصلی چیه. فلوچارت مثل یه زبان مشترک بین برنامهنویسا عمل میکنه.
🔹 3. موقع دیباگ و بهینهسازی کد
با دیدن مسیرها روی فلوچارت، راحتتر میفهمی کجا شرطها بیاستفادهان یا حلقهها میتونن سادهتر بشن.
🔹 4. وقتی قراره کد مستندسازی بشه
مستندسازی حرفهای بدون فلوچارت ناقصه. فلوچارتها به توسعهدهندگان آینده کمک میکنن سریعتر منطق برنامه رو درک کنن.
🧠 خلاصهی ماجرا:
هر وقت منطق برنامه طولانی، چندشاخه، یا تیمی باشه — فلوچارت تبدیل میشه به بهترین دوستت.
#Programming #Flowchart
Channel | Group
❤13
🖥️ BIOS
چیه و چرا اینقدر مهمه؟
تا کامپیوتر رو روشن میکنی و قبل از اینکه ویندوز بیاد بالا یه سری اتفاق میافته… 🤔
⚡پشت همهشون یه قهرمان پنهان کار میکنه: BIOS!
🔤 BIOS ⤵️
Basic Input/Output System
🚀همون نرمافزار اولیهای که اول از همه بعد از روشن شدن اجرا میشه.
🛠️ کار BIOS چیه؟
🌟 چرا اینقدر مهمه؟
چون بدون BIOS، سیستمعامل نمیفهمه باید از کجا شروع کنه.
در واقع BIOS مثل رهبر ارکستره 🎼
همهچیز رو هماهنگ میکنه تا سیستم آماده اجرای اصلی بشه.
🆚 UEFI
نسخهی مدرنتر BIOS:
اما نقش اصلیش همونه: آمادهسازی سیستم برای بوت.
🧠 خلاصه:
💤 BIOS = اولین نرمافزار بعد از روشن شدن + کنترل سختافزار + آمادهسازی سیستمعامل.
بدونش، کامپیوتر فقط یه جعبه ساکت و خاموشه
#Programming #Fact
Channel | Group
چیه و چرا اینقدر مهمه؟
تا کامپیوتر رو روشن میکنی و قبل از اینکه ویندوز بیاد بالا یه سری اتفاق میافته… 🤔
⚡پشت همهشون یه قهرمان پنهان کار میکنه: BIOS!
🔤 BIOS ⤵️
Basic Input/Output System
🚀همون نرمافزار اولیهای که اول از همه بعد از روشن شدن اجرا میشه.
🛠️ کار BIOS چیه؟
✔️ چک کردن سختافزارها: RAM, CPU, GPU, HDD… 🔍
✔️ تعیین اینکه سیستم از کجا بوت بشه 🔄
✔️ دادن محیط تنظیمات پایه به کاربر ⚙️
✔️ راهاندازی سیستمعامل و تحویل دادن کنترل بهش 💻
🌟 چرا اینقدر مهمه؟
چون بدون BIOS، سیستمعامل نمیفهمه باید از کجا شروع کنه.
در واقع BIOS مثل رهبر ارکستره 🎼
همهچیز رو هماهنگ میکنه تا سیستم آماده اجرای اصلی بشه.
🆚 UEFI
نسخهی مدرنتر BIOS:
✨ رابط گرافیکی بهتر
✨ امنیت بالاتر
✨ سرعت بیشتر
اما نقش اصلیش همونه: آمادهسازی سیستم برای بوت.
🧠 خلاصه:
💤 BIOS = اولین نرمافزار بعد از روشن شدن + کنترل سختافزار + آمادهسازی سیستمعامل.
بدونش، کامپیوتر فقط یه جعبه ساکت و خاموشه
#Programming #Fact
Channel | Group
🔥12❤2
This media is not supported in your browser
VIEW IN TELEGRAM
Draw.io (diagrams.net)
یکی از بهترین ابزارها برای طراحی فلوچارت، ERD، دیاگرام شبکه، معماری نرمافزار، UML و هر چیزی که یک دانشجوی کامپیوتر لازم داره!
✨ ویژگیها
☝️ رایگان و کاملاً آنلاین
✌️ قالبهای آماده برای ERD، UML، Flowchart
🤟 امکان ذخیره در Google Drive یا دانلود فایل
👌 سبک، سریع و مناسب برای پروژههای دانشگاهی
🎯 پیشنهاد استفاده
#programming #Flowchart
Channel | Group
یکی از بهترین ابزارها برای طراحی فلوچارت، ERD، دیاگرام شبکه، معماری نرمافزار، UML و هر چیزی که یک دانشجوی کامپیوتر لازم داره!
✨ ویژگیها
☝️ رایگان و کاملاً آنلاین
✌️ قالبهای آماده برای ERD، UML، Flowchart
🤟 امکان ذخیره در Google Drive یا دانلود فایل
👌 سبک، سریع و مناسب برای پروژههای دانشگاهی
🎯 پیشنهاد استفاده
قبل از شروع هر پروژه، یک دیاگرام UML یا فلوچارت بکش. هم پروژه تمیزتر میشه هم موقع ارائه نمرهات بالاتر میره.
#programming #Flowchart
Channel | Group
❤7🔥2
Forwarded from TechTube 𝕏 تک توب
طبق امار گیتهاب، TypeScript با پشت سر گذاشتن پایتون به محبوبترین زبان مورداستفاده توسط برنامه نویسان در گیتهاب از نظر تعداد کاربر تبدیل شده.
این زبان نسبت به سال گذشته 66 درصد رشد در تعداد کاربران گیتهاب داشته که اشتیاق بیشتر کاربران برای زبانهای تایپ شده رو نشون میده. در بین پروژه های هوش مصنوعی اما پایتون کماکان اول هست.
از نظر پروژه های ساخته شده هم جاوااسکریپت اوله و با پایتون با اختلاف کمی در جایگاه دوم قرار داره.
🔎 github
📍 @TechTube
این زبان نسبت به سال گذشته 66 درصد رشد در تعداد کاربران گیتهاب داشته که اشتیاق بیشتر کاربران برای زبانهای تایپ شده رو نشون میده. در بین پروژه های هوش مصنوعی اما پایتون کماکان اول هست.
از نظر پروژه های ساخته شده هم جاوااسکریپت اوله و با پایتون با اختلاف کمی در جایگاه دوم قرار داره.
🔎 github
📍 @TechTube
🔥7❤3
This media is not supported in your browser
VIEW IN TELEGRAM
این ویدیو به شخصیتهای مختلف جیپیتی میپردازه که با کمک این اطلاعات میتونید متناسبت با نوع استفادتون درست ازش کار بکشید!
#ai #programming
Channel | Group
#ai #programming
Channel | Group
👍7❤5
This media is not supported in your browser
VIEW IN TELEGRAM
☕️ چرا برنامهنویسا همیشه قهوه میخورن؟ چون بدون قهوه، کدها با ارور شروع میشن و با افسردگی تموم 😅 قهوه فقط یه نوشیدنی نیست، یه debugger طبیعیه برای ذهن ما برنامهنویسا 💻🔥
#programming
Channel | Group
#programming
Channel | Group
❤13
✨ این پست بهتون یاد میده که باگ به چه معنیه و تاریخچه دیباگ کردن چیه و از کجا شروع شده ♻️
در سال 1945 یک خانم برنامه نویس به نام Grace Murray Hopper در دانشگاه هاروارد آمریکا در حال پیدا کردن و اشکالزدایی کامپیوتر Mark II بود .
این کامپیوتر با مشکل مواجه شده بود که خانم گریس هاپر بعد از گشتن علت مشکل متوجه شد که یک حشره (سوسک) در بین رلههای این کامپیوتر گیر کرده است و رله کامپیوتر را با مشکل مواجه کرده است .
✨ از آن به بعد هرگونه مشکلاتی که در نرمافزار به وجود میآمد باگ (حشره) نامیده شد و عملیات اشکالزدایی باگ ، دیباگ کردن (Debugging) نامیده شد .
#Debugging #Bug #programing
Channel | Group
در سال 1945 یک خانم برنامه نویس به نام Grace Murray Hopper در دانشگاه هاروارد آمریکا در حال پیدا کردن و اشکالزدایی کامپیوتر Mark II بود .
این کامپیوتر با مشکل مواجه شده بود که خانم گریس هاپر بعد از گشتن علت مشکل متوجه شد که یک حشره (سوسک) در بین رلههای این کامپیوتر گیر کرده است و رله کامپیوتر را با مشکل مواجه کرده است .
✨ از آن به بعد هرگونه مشکلاتی که در نرمافزار به وجود میآمد باگ (حشره) نامیده شد و عملیات اشکالزدایی باگ ، دیباگ کردن (Debugging) نامیده شد .
#Debugging #Bug #programing
Channel | Group
👍6❤3
🧩 توی دنیای برنامهنویسی، بزرگترین skill این نیست که همهچیز رو بلد باشی …
✨ بلکه اینه که باید بدونی چی رو کی ، کجا و چطور سرچ کنی. 😎💡
➕ واقعیت اینه :
هیچکس همهی توابع، الگوها یا APIها رو حفظ نیست.
➕ اما حرفهایها یه چیزو خوب بلدن :
تفکر ساختاری و تفکیک مسئله.
🎯 وقتی بلد باشی یه مشکل رو
به چند تیکهی کوچکتر بشکنی،
حتی پیچیدهترین پروژهها هم قابل حل میشن 🔧🧠
⚡️ پس دفعه بعد که گیر کردی،
بهجای استرس …
مشکل رو تکهتکه کن و مرحلهبهمرحله بزن جلو , این یعنی حرفهای بودن✨
#programming
Channel | Group
✨ بلکه اینه که باید بدونی چی رو کی ، کجا و چطور سرچ کنی. 😎💡
➕ واقعیت اینه :
هیچکس همهی توابع، الگوها یا APIها رو حفظ نیست.
➕ اما حرفهایها یه چیزو خوب بلدن :
تفکر ساختاری و تفکیک مسئله.
🎯 وقتی بلد باشی یه مشکل رو
به چند تیکهی کوچکتر بشکنی،
حتی پیچیدهترین پروژهها هم قابل حل میشن 🔧🧠
⚡️ پس دفعه بعد که گیر کردی،
بهجای استرس …
مشکل رو تکهتکه کن و مرحلهبهمرحله بزن جلو , این یعنی حرفهای بودن✨
#programming
Channel | Group
❤14👍3
🔰 چرا باید C++ یاد بگیریم؟
اگه فقط اسم C++ رو شنیدی و حس کردی زبون سختیه… حق داری 😅
✨ اما واقعیت اینه که این زبان یکی از پایهایترین و قدرتمندترین ابزارهای دنیاست.
♻️ سرعت وحشیانه!
و C++ همون زبانیه که برای موتورهای بازی ، سیستمعاملها ، و برنامههای سنگین استفاده میشه ؛
هرجا Performance مهم باشه »»» ++C اونجاست.
♻️ تسلط روی Memory
این زبون بهت اجازه میده دقیقاً بدونی هر بایت از حافظه کجا میره.
هم جذابه، هم ترسناک 😁
♻️ پشتصحنه دنیای مدرن
کرنلهای لینوکس، مرورگرها، بخشهایی از Unreal Engine، ابزارهای مالی — همه با C++ ساخته شدن.
🚩 اگه C++ بلد باشی …
#programming
Channel | Group
اگه فقط اسم C++ رو شنیدی و حس کردی زبون سختیه… حق داری 😅
✨ اما واقعیت اینه که این زبان یکی از پایهایترین و قدرتمندترین ابزارهای دنیاست.
♻️ سرعت وحشیانه!
و C++ همون زبانیه که برای موتورهای بازی ، سیستمعاملها ، و برنامههای سنگین استفاده میشه ؛
هرجا Performance مهم باشه »»» ++C اونجاست.
♻️ تسلط روی Memory
این زبون بهت اجازه میده دقیقاً بدونی هر بایت از حافظه کجا میره.
هم جذابه، هم ترسناک 😁
♻️ پشتصحنه دنیای مدرن
کرنلهای لینوکس، مرورگرها، بخشهایی از Unreal Engine، ابزارهای مالی — همه با C++ ساخته شدن.
🚩 اگه C++ بلد باشی …
یادگیری Python، Go، Rust و Java برات با سرعت نور انجام میشه.
چون مفاهیم اصلی رو با یه زبان “سخت اما مادر” یاد گرفتی 🔥
#programming
Channel | Group
❤12👍3🔥2
🧠 محاسبه حافظهٔ انواع داده در C
وقتی در C برنامه مینویسیم، هر متغیر در حافظه یک مقدار مشخص جا اشغال میکند. این مقدار کاملاً به نوع داده بستگی دارد. اگر این را از ابتدا یاد بگیری، خیلی بهتر میتوانی ساختار برنامهها را درک کنی.
📏 اندازهٔ معمول انواع داده در بیشتر کامپیوترها:
(اینها ممکن است تغییر کنند، و به همین دلیل همیشه میتوانی با sizeof() اندازه دقیق را ببینی.)
🧮 چطور حافظه را حساب کنیم؟
مثالها:
وقتی مینویسی int a; معمولاً ۴ بایت در حافظه برایش کنار گذاشته میشود.
وقتی آرایهای مثل char name[10] بسازی، دقیقاً ۱۰ بایت مصرف میکند.
اگر بنویسی double nums[5]، چون هر double حدود ۸ بایت است، این آرایه میشود ۵ × ۸ = ۴۰ بایت.
🌱 توضیح بیشتر برای تازهکارها
اگر تازه شروع کردی، یه نکته مهم رو بدون:
کامپیوتر همهچیز را در قالب بایت ذخیره میکند.
هر نوع داده مثل int یا double فقط یک قرارداد است؛ یعنی C مشخص کرده که برای ذخیره انواع مختلف اعداد، چه مقدار حافظه لازم است.
وقتی میگویی:
C
در واقع داری از کامپیوتر میخواهی:
«یک فضای ۴ بایتی به من بده تا یک عدد صحیح داخلش ذخیره کنم.»
و وقتی آرایه تعریف میکنی، مثل:
C
یعنی:
«سه عدد صحیح پشت سر هم ذخیره کن.»
و چون هرکدام معمولاً ۴ بایت هستند، کل این آرایه ۱۲ بایت میشود.
❗️درک همین مفاهیم ساده کمک میکند بعداً که به سراغ ساختارها، اشارهگرها و مدیریت حافظه رفتی، گیج نشوی.
#Programming #C
Channel | Group
وقتی در C برنامه مینویسیم، هر متغیر در حافظه یک مقدار مشخص جا اشغال میکند. این مقدار کاملاً به نوع داده بستگی دارد. اگر این را از ابتدا یاد بگیری، خیلی بهتر میتوانی ساختار برنامهها را درک کنی.
📏 اندازهٔ معمول انواع داده در بیشتر کامپیوترها:
char: معمولاً ۱ بایت فضا دارد
short: معمولاً ۲ بایت است
int: معمولاً ۴ بایت است
long: بسته به سیستم ۴ یا ۸ بایت میشود
long long: تقریباً همیشه ۸ بایت است
float: حدود ۴ بایت فضا میگیرد
double: معمولاً ۸ بایت مصرف میکند
(اینها ممکن است تغییر کنند، و به همین دلیل همیشه میتوانی با sizeof() اندازه دقیق را ببینی.)
🧮 چطور حافظه را حساب کنیم؟
مثالها:
وقتی مینویسی int a; معمولاً ۴ بایت در حافظه برایش کنار گذاشته میشود.
وقتی آرایهای مثل char name[10] بسازی، دقیقاً ۱۰ بایت مصرف میکند.
اگر بنویسی double nums[5]، چون هر double حدود ۸ بایت است، این آرایه میشود ۵ × ۸ = ۴۰ بایت.
🌱 توضیح بیشتر برای تازهکارها
اگر تازه شروع کردی، یه نکته مهم رو بدون:
کامپیوتر همهچیز را در قالب بایت ذخیره میکند.
هر نوع داده مثل int یا double فقط یک قرارداد است؛ یعنی C مشخص کرده که برای ذخیره انواع مختلف اعداد، چه مقدار حافظه لازم است.
وقتی میگویی:
C
int score;
در واقع داری از کامپیوتر میخواهی:
«یک فضای ۴ بایتی به من بده تا یک عدد صحیح داخلش ذخیره کنم.»
و وقتی آرایه تعریف میکنی، مثل:
C
int arr[3];
یعنی:
«سه عدد صحیح پشت سر هم ذخیره کن.»
و چون هرکدام معمولاً ۴ بایت هستند، کل این آرایه ۱۲ بایت میشود.
❗️درک همین مفاهیم ساده کمک میکند بعداً که به سراغ ساختارها، اشارهگرها و مدیریت حافظه رفتی، گیج نشوی.
#Programming #C
Channel | Group
❤9👍2🔥2