کتاب صوتی هک کردن IBM PC: راهنمای جامع برنامه‌نویس برای کنترل عمیق سخت‌افزار و سیستم عامل

هک کردن IBM PC: راهنمای جامع برنامه‌نویس برای کنترل عمیق سخت‌افزار و سیستم عامل هک کردن IBM PC: دروازه‌ای به دنیای برنامه‌نویسی سطح پایین و کنترل بی‌نظیر سخت‌افزار آیا رویای کنترل کامل کامپیوتر خود را...

انتخاب پلن

انتخاب پلن برای ادامه خرید الزامی است.

پرداخت اقساطی
در صورت خرید اقساطی هر قسط: 99,988 تومان
۴ قسط ماهانه. بدون سود، چک و ضامن.
پرداخت اقساطی با دیجی‌پی پرداخت اقساطی با ترب‌پی

🎓 دوره آموزشی جامع

📚 اطلاعات دوره

عنوان دوره: هک کردن IBM PC: راهنمای جامع برنامه‌نویس برای کنترل عمیق سخت‌افزار و سیستم عامل

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

موضوع میانی: برنامه‌نویسی سیستمی و تعامل مستقیم با سخت‌افزار IBM PC

📋 سرفصل‌های دوره (100 موضوع)

  • 1. مقدمه‌ای بر معماری IBM PC و اهمیت برنامه‌نویسی سطح پایین
  • 2. تاریخچه کامپیوترهای شخصی IBM و سازگارهای آن
  • 3. مروری بر اجزای اصلی سخت‌افزار: پردازنده، حافظه، باس‌ها و دستگاه‌های جانبی
  • 4. سیستم‌های عددی برای برنامه‌نویسان: باینری، هگزادسیمال و اکتال
  • 5. مفاهیم پایه حافظه: بیت، بایت، کلمه و آدرس‌دهی
  • 6. ابزارهای ضروری: اسمبلر، لینکر و دیباگر (DEBUG.exe)
  • 7. ساختار یک برنامه اسمبلی: مدل‌های حافظه و سگمنت‌ها
  • 8. برنامه "سلام دنیا" در اسمبلی: اولین تماس با کد سطح پایین
  • 9. تفاوت فایل‌های COM و EXE و نحوه ساخت هر کدام
  • 10. نقشه راه دوره: از بایوس و داس تا کنترل مستقیم سخت‌افزار
  • 11. معماری پردازنده 8088/8086: قلب تپنده IBM PC
  • 12. رجیسترهای عمومی: AX, BX, CX, DX
  • 13. رجیسترهای سگمنت: CS, DS, ES, SS
  • 14. رجیسترهای اشاره‌گر و اندیس: SP, BP, SI, DI
  • 15. رجیستر فلگ‌ها (Flags) و نقش آن در تصمیم‌گیری
  • 16. مفاهیم پشته (Stack) و عملیات PUSH و POP
  • 17. حالت‌های آدرس‌دهی پردازنده
  • 18. دستورالعمل‌های انتقال داده (MOV, LEA, XCHG)
  • 19. دستورالعمل‌های محاسباتی و منطقی (ADD, SUB, AND, OR, XOR)
  • 20. دستورالعمل‌های کنترل جریان برنامه (JMP, CALL, RET, LOOP)
  • 21. نقشه حافظه یک مگابایتی IBM PC
  • 22. آدرس‌دهی سگمنت:آفست (Segment:Offset)
  • 23. حافظه قراردادی (Conventional Memory) و محدوده 640 کیلوبایتی
  • 24. ناحیه حافظه بالا (Upper Memory Area - UMA)
  • 25. کاوش در ROM BIOS و حافظه‌های فقط خواندنی سیستم
  • 26. ناحیه داده‌های بایوس (BIOS Data Area - BDA)
  • 27. بافرهای حافظه ویدئو: متنی و گرافیکی
  • 28. جدول بردار وقفه (Interrupt Vector Table - IVT)
  • 29. مفهوم وقفه (Interrupt) نرم‌افزاری و سخت‌افزاری
  • 30. مقدمه‌ای بر سرویس‌های ROM BIOS
  • 31. سرویس‌های ویدئویی (INT 10h): مدیریت حالت‌های نمایش و مکان‌نما
  • 32. سرویس‌های ویدئویی (INT 10h): نوشتن کاراکتر و صفات رنگی
  • 33. سرویس‌های دیسک (INT 13h): خواندن و نوشتن سکتورها
  • 34. سرویس‌های صفحه کلید (INT 16h): دریافت ورودی از کاربر
  • 35. سرویس‌های پورت سریال (INT 14h)
  • 36. سرویس‌های چاپگر (INT 17h)
  • 37. سرویس‌های سیستمی (INT 11h, INT 12h): تشخیص تجهیزات و اندازه حافظه
  • 38. سرویس‌های زمان و تاریخ (INT 1Ah)
  • 39. مفهوم هوک کردن وقفه‌ها (Interrupt Hooking)
  • 40. نقش سیستم‌عامل داس (DOS)
  • 41. فراخوانی سرویس‌های داس: وقفه 21h
  • 42. توابع ورودی و خروجی کاراکتر در داس
  • 43. مدیریت فایل با استفاده از دستگیره‌ها (File Handles)
  • 44. ایجاد، باز کردن و بستن فایل‌ها
  • 45. خواندن و نوشتن در فایل‌ها
  • 46. مدیریت دایرکتوری‌ها: ساخت، حذف و پیمایش
  • 47. مدیریت حافظه در داس و بلوک‌های کنترل حافظه (MCB)
  • 48. اجرای برنامه‌های دیگر (تابع EXEC)
  • 49. مقدمه‌ای بر برنامه‌های مقیم در حافظه (TSR)
  • 50. کاوش در توابع مستندنشده داس
  • 51. تکامل گرافیک در کامپیوترهای شخصی: MDA, CGA, EGA, VGA
  • 52. حالت متنی (Text Mode): بایت کاراکتر و بایت صفت
  • 53. نوشتن مستقیم در حافظه ویدئویی حالت متنی
  • 54. کنترلر CRT 6845 و رجیسترهای آن
  • 55. حالت‌های گرافیکی CGA و محدودیت‌های آن
  • 56. معماری EGA و مفهوم صفحات حافظه (Planes)
  • 57. معماری VGA و مبدل دیجیتال به آنالوگ (DAC)
  • 58. برنامه‌نویسی برای حالت گرافیکی محبوب Mode 13h (320x200x256)
  • 59. تکنیک‌های پیشرفته گرافیکی: صفحه‌برگردانی (Page Flipping)
  • 60. شناسایی کارت گرافیک نصب شده
  • 61. مقایسه سرعت: خروجی از طریق بایوس در مقابل نوشتن مستقیم در حافظه
  • 62. دستکاری فونت‌های کاراکتری در حالت متنی
  • 63. کنترلر صفحه‌کلید 8042
  • 64. اسکن‌کد (Scan Code) در مقابل کد اسکی (ASCII)
  • 65. خواندن وضعیت لحظه‌ای کلیدها از پورت‌های سخت‌افزاری
  • 66. بافر صفحه‌کلید و نحوه عملکرد آن
  • 67. سرویس‌های ماوس (INT 33h)
  • 68. خواندن موقعیت و وضعیت دکمه‌های ماوس
  • 69. طراحی یک نشانگر ماوس سفارشی در حالت گرافیکی
  • 70. کنترلر فلاپی دیسک (FDC)
  • 71. هندسه دیسک: سیلندر، هد و سکتور
  • 72. رکورد راه‌انداز اصلی (Master Boot Record - MBR)
  • 73. سکتور راه‌انداز داس (DOS Boot Sector) و بلوک پارامترهای بایوس (BPB)
  • 74. ساختار جدول تخصیص فایل (FAT)
  • 75. ساختار دایرکتوری ریشه (Root Directory)
  • 76. کنترل مستقیم پورت سریال (UART)
  • 77. کنترل مستقیم پورت موازی (LPT)
  • 78. کنترلر وقفه برنامه‌پذیر (PIC 8259A)
  • 79. نقاب‌گذاری (Masking) وقفه‌های سخت‌افزاری
  • 80. فرمان پایان وقفه (End-of-Interrupt)
  • 81. تایمر قابل برنامه‌ریزی (PIT 8253/8254)
  • 82. استفاده از تایمر برای ایجاد تأخیرهای دقیق
  • 83. تولید صدا با استفاده از تایمر و بلندگوی داخلی (PC Speaker)
  • 84. کنترلر دسترسی مستقیم به حافظه (DMA 8237A)
  • 85. ساعت بی‌درنگ (Real-Time Clock - RTC)
  • 86. نقشه پورت‌های ورودی/خروجی (I/O Ports)
  • 87. حافظه CMOS و ذخیره تنظیمات سیستم
  • 88. تکنیک‌های پیشرفته برنامه‌نویسی TSR
  • 89. نوشتن یک روال سرویس وقفه (ISR) سفارشی
  • 90. نوشتن یک برنامه ساده برای سکتور راه‌انداز (Boot Sector)
  • 91. ساخت یک درایور دستگاه (Device Driver) ساده
  • 92. ترکیب اسمبلی با زبان‌های سطح بالا مانند C و پاسکال
  • 93. تکنیک‌های بهینه‌سازی حافظه و کاهش حجم برنامه
  • 94. مهندسی معکوس برنامه‌های ساده با DEBUG
  • 95. کاوش در عملکرد داخلی COMMAND.COM
  • 96. پروژه نهایی: ساخت یک بازی یا ابزار کاربردی کوچک
  • 97. میراث IBM PC و گذار به معماری‌های مدرن
هک کردن IBM PC: راهنمای جامع برنامه‌نویس برای کنترل عمیق سخت‌افزار و سیستم عامل

هک کردن IBM PC: دروازه‌ای به دنیای برنامه‌نویسی سطح پایین و کنترل بی‌نظیر سخت‌افزار

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

دوره "هک کردن IBM PC" با الهام از کتاب افسانه‌ای "The Peter Norton Programmer's guide to the IBM PC" به شما این امکان را می‌دهد تا به اعماق دنیای برنامه‌نویسی سطح پایین سفر کنید. این کتاب، که برای نسل‌ها راهنمای برنامه‌نویسان بوده است، به شما نشان داد چگونه می‌توانید با سخت‌افزار IBM PC به طور مستقیم ارتباط برقرار کنید. ما در این دوره، با به‌روزرسانی و گسترش مفاهیم ارائه شده در آن کتاب ارزشمند، یک مسیر جامع و کاربردی برای تسلط بر برنامه‌نویسی سیستمی و معماری کامپیوترهای شخصی را در اختیار شما قرار می‌دهیم.

درباره دوره

دوره "هک کردن IBM PC" یک سفر آموزشی عمیق در دنیای برنامه‌نویسی سیستمی و تعامل مستقیم با سخت‌افزار IBM PC است. این دوره نه تنها مفاهیم کلیدی ارائه شده در کتاب "The Peter Norton Programmer's guide to the IBM PC" را پوشش می‌دهد، بلکه با افزودن محتوای جدید و تمرین‌های عملی پیشرفته، شما را برای چالش‌های دنیای مدرن برنامه‌نویسی آماده می‌کند. شما در این دوره یاد خواهید گرفت چگونه سیستم عامل را درک کرده، درایورهای سخت‌افزاری بنویسید، و برنامه‌هایی با کارایی بالا ایجاد کنید که مستقیماً با سخت‌افزار تعامل دارند. هدف ما این است که دانش و مهارت‌های لازم را در اختیار شما قرار دهیم تا بتوانید به یک برنامه‌نویس سیستمی حرفه‌ای تبدیل شوید و در زمینه‌هایی مانند امنیت سایبری، سیستم‌های تعبیه‌شده، و بهینه‌سازی عملکرد نرم‌افزار سرآمد باشید.

موضوعات کلیدی

  • معماری کامپیوترهای شخصی (CPU, حافظه، ورودی/خروجی)
  • مقدمه‌ای بر زبان اسمبلی (Assembly) و برنامه‌نویسی سطح پایین
  • تعامل مستقیم با سخت‌افزار IBM PC (صفحه کلید، صفحه نمایش، دیسک‌ها)
  • برنامه‌نویسی سیستم عامل (DOS) و ساختار فایل‌ها
  • Interruptها و مدیریت حافظه در محیط DOS
  • نوشتن درایورهای سخت‌افزاری سفارشی
  • بهینه‌سازی عملکرد نرم‌افزار از طریق دستکاری مستقیم سخت‌افزار
  • عیب‌یابی و دیباگینگ برنامه‌های سطح پایین
  • مفاهیم پیشرفته برنامه‌نویسی سیستمی (BIOS, DMA, IRQ)
  • امنیت سیستم و تکنیک‌های جلوگیری از حملات

مخاطبان دوره

این دوره برای افراد زیر مناسب است:

  • برنامه‌نویسانی که به دنبال درک عمیق‌تری از نحوه عملکرد کامپیوترها هستند.
  • دانشجویان رشته‌های مهندسی کامپیوتر و علوم کامپیوتر که می‌خواهند مفاهیم پایه‌ای معماری کامپیوتر و برنامه‌نویسی سیستمی را بیاموزند.
  • متخصصان امنیت سایبری که به دنبال درک آسیب‌پذیری‌های سطح پایین سیستم‌ها هستند.
  • برنامه‌نویسان سیستم‌های تعبیه‌شده (Embedded Systems) که نیاز به تعامل مستقیم با سخت‌افزار دارند.
  • افرادی که به برنامه‌نویسی قدیمی (Retro Programming) و بازسازی بازی‌ها و نرم‌افزارهای قدیمی علاقه‌مند هستند.
  • هر کسی که کنجکاو است بداند کامپیوترها واقعاً چگونه کار می‌کنند!

چرا این دوره را بگذرانیم؟

گذراندن دوره "هک کردن IBM PC" مزایای بی‌شماری دارد:

  • درک عمیق از معماری کامپیوتر: دیگر یک کاربر ساده نخواهید بود. با درک عمیق از سخت‌افزار و سیستم عامل، می‌توانید مشکلات را به طور موثرتری حل کنید و برنامه‌های بهتری بنویسید.
  • تسلط بر برنامه‌نویسی سطح پایین: مهارت‌های برنامه‌نویسی اسمبلی و تعامل مستقیم با سخت‌افزار، شما را به یک برنامه‌نویس قدرتمندتر تبدیل می‌کند.
  • افزایش فرصت‌های شغلی: دانش برنامه‌نویسی سیستمی و سخت‌افزار، شما را برای مشاغل تخصصی در زمینه‌های امنیت سایبری، سیستم‌های تعبیه‌شده و بهینه‌سازی عملکرد نرم‌افزار آماده می‌کند.
  • حل مشکلات پیچیده: با درک عمیق از نحوه عملکرد سیستم‌ها، می‌توانید مشکلات پیچیده را به طور موثرتری شناسایی و حل کنید.
  • بهینه‌سازی عملکرد نرم‌افزار: با دسترسی مستقیم به سخت‌افزار، می‌توانید برنامه‌هایی با کارایی بالا و سرعت فوق‌العاده ایجاد کنید.
  • باز کردن دنیای برنامه‌نویسی قدیمی: به دنیای جذاب برنامه‌نویسی قدیمی (Retro Programming) وارد شوید و بازی‌ها و نرم‌افزارهای کلاسیک را بازسازی کنید.
  • الهام‌گرفته از یک کلاسیک: این دوره با الهام از کتاب "The Peter Norton Programmer's guide to the IBM PC" طراحی شده است، کتابی که نسل‌ها برنامه‌نویسان را راهنمایی کرده است.
  • فراتر از کدنویسی: این دوره فراتر از صرف کدنویسی است. شما یاد می‌گیرید چگونه فکر کنید، چگونه مشکلات را حل کنید و چگونه با چالش‌های پیچیده روبرو شوید.

سرفصل‌های دوره (100 سرفصل جامع)

دوره "هک کردن IBM PC" شامل 100 سرفصل جامع است که به طور کامل مباحث زیر را پوشش می‌دهند (فقط بخشی از سرفصل‌ها برای نمونه ذکر شده است):

  • بخش 1: آشنایی با معماری IBM PC
    • 1.1. مقدمه‌ای بر معماری x86
    • 1.2. اجزای اصلی کامپیوتر (CPU، حافظه، مادربرد)
    • 1.3. Busها و درگاه‌های ورودی/خروجی
    • 1.4. حافظه ROM BIOS و نقش آن
    • 1.5. Interruptها و مدیریت آن‌ها
  • بخش 2: برنامه‌نویسی اسمبلی (Assembly)
    • 2.1. مقدمه‌ای بر زبان اسمبلی و دستورات پایه
    • 2.2. ثبات‌ها (Registers) و نحوه استفاده از آن‌ها
    • 2.3. Addressing Modes و دسترسی به حافظه
    • 2.4. دستورات محاسباتی و منطقی
    • 2.5. دستورات انتقال کنترل (Jump, Call, Return)
    • 2.6. نوشتن زیربرنامه‌ها (Subroutines) و توابع
    • 2.7. استفاده از اسمبلر (Assembler) و لینکر (Linker)
    • 2.8. دیباگینگ برنامه‌های اسمبلی
  • بخش 3: تعامل با سخت‌افزار
    • 3.1. کنترل صفحه کلید و دریافت ورودی از کاربر
    • 3.2. نمایش متن و گرافیک روی صفحه نمایش
    • 3.3. کار با دیسک‌ها (Hard Disk, Floppy Disk)
    • 3.4. برنامه‌نویسی پورت‌های ورودی/خروجی
    • 3.5. استفاده از تایمرها و کنترل وقفه
    • 3.6. نوشتن درایور برای سخت‌افزارهای مختلف
  • بخش 4: برنامه‌نویسی سیستم عامل DOS
    • 4.1. ساختار سیستم عامل DOS
    • 4.2. فراخوانی سرویس‌های DOS
    • 4.3. مدیریت فایل‌ها و دایرکتوری‌ها
    • 4.4. مدیریت حافظه در DOS
    • 4.5. برنامه‌نویسی TSR (Terminate and Stay Resident)
  • بخش 5: مفاهیم پیشرفته
    • 5.1. DMA (Direct Memory Access)
    • 5.2. IRQ (Interrupt Request)
    • 5.3. BIOS (Basic Input/Output System)
    • 5.4. برنامه‌نویسی چندوظیفه‌ای (Multitasking) (مقدماتی)
    • 5.5. حفاظت از سیستم و امنیت

... و ده‌ها سرفصل دیگر که شما را به یک متخصص برنامه‌نویسی سیستمی تبدیل می‌کنند!

همین حالا در دوره "هک کردن IBM PC" ثبت‌نام کنید و سفر خود را به دنیای جذاب برنامه‌نویسی سطح پایین آغاز کنید! فرصت را از دست ندهید و دانش خود را به سطح جدیدی ارتقا دهید!

EXPRESS24 AUDIO EXPERIENCE
یادگیری را بشنوید؛ زندگی کنید
کتاب‌های صوتی و پادکست‌های آموزشی، راهی دلنشین برای کشف ایده‌های تازه، گسترش دانش و استفاده بهتر از لحظه‌های روزمره هستند.
دانش، الهام و تجربه؛ این بار با صدای زندگی
برای آموختن، همیشه لازم نیست بخوانید
گاهی بهترین فرصت یادگیری زمانی است که در مسیر رفت‌وآمد هستید، قدم می‌زنید، استراحت می‌کنید یا کارهای روزمره‌تان را انجام می‌دهید. محتوای صوتی کمک می‌کند از این لحظه‌ها برای شنیدن، اندیشیدن و آشنایی با موضوعات تازه بهره ببرید.
◷
یادگیری در دل روزمرگی
از زمان رفت‌وآمد، پیاده‌روی یا استراحت برای شنیدن محتوای مفید استفاده کنید؛ بدون آنکه همیشه به کتاب چاپی یا صفحه نمایش نیاز داشته باشید.
◎
تجربه‌ای شنیداری و دلنشین
با روایت صوتی، توضیحات گفتاری و فضای شنیداری هر محتوا همراه شوید و متناسب با سلیقه خود، شیوه تازه‌ای برای دریافت مطالب تجربه کنید.
✦
گسترش دانش و دیدگاه
با موضوعات متنوع آشنا شوید، ایده‌های تازه کشف کنید و فرصت بیشتری برای یادگیری مستمر و پرورش کنجکاوی خود بسازید.
♫
همراه با سبک زندگی شما
محتوای صوتی را متناسب با برنامه روزانه خود انتخاب کنید و در زمان مناسب، شنیدن را به بخشی از عادت‌های شخصی‌تان تبدیل کنید.
کتاب صوتی یا پادکست؟
کتاب صوتی
راهی برای همراه شدن با محتوای یک کتاب از طریق شنیدن. بسته به اثر، می‌توانید داستان‌ها، آموزش‌ها، مفاهیم تخصصی یا مطالب کاربردی را در قالب روایت و بیان صوتی دنبال کنید.
مناسب برای شنیدن و مرور محتوای کتاب‌ها
پادکست آموزشی
فرصتی برای دنبال کردن موضوعات مشخص در قالب گفت‌وگو، روایت، توضیح آموزشی یا مجموعه‌ای از قسمت‌های صوتی؛ مناسب برای کشف ایده‌ها و آشنایی با دیدگاه‌های گوناگون.
مناسب برای یادگیری موضوعی و شنیدن دیدگاه‌های تازه
هر جا که هستید، شنیدن را آغاز کنید
با دستگاه مناسب خود، محتوای صوتی را به آسانی دنبال کنید.
▯
گوشی هوشمند
اندروید و آیفون
▣
تبلت
برای شنیدن و دنبال کردن محتوا
▤
رایانه و لپ‌تاپ
با پخش‌کننده صوتی سازگار
♫
هدفون و بلندگو
برای شنیدن متناسب با محیط
چطور از تجربه شنیدن بیشتر بهره ببریم؟
✦ زمان مناسبی برای شنیدن انتخاب کنید؛ زمانی که بتوانید با آرامش به محتوا توجه داشته باشید.
✦ برای مطالب آموزشی، نکته‌های مهم را یادداشت کنید یا پس از پایان شنیدن، آن‌ها را مرور کنید.
✦ اگر محتوا طولانی است، آن را در چند نوبت دنبال کنید تا فرصت بیشتری برای درک و مرور داشته باشید.
✦ هنگام رانندگی یا انجام کارهای نیازمند تمرکز، ایمنی را در اولویت قرار دهید و از شیوه شنیدنی استفاده کنید که حواس شما را مختل نکند.
هر شنیدن، فرصتی برای کشف است
با کتاب‌های صوتی و پادکست‌های آموزشی، دنیای تازه‌ای از ایده‌ها، روایت‌ها و آموختنی‌ها را به لحظه‌های خود اضافه کنید.
کشف محصولات بیشتر در اکسپرس ۲۴
express24.ir
امکانات پخش، ادامه شنیدن و دسترسی آفلاین به نوع فایل، دستگاه و نرم‌افزار مورد استفاده بستگی دارد.
AUDIO PREVIEW
قبل از انتخاب، گوش کنید!
بخشی از سبک محتوای محصولات صوتی ما را بشنوید و با فضای آن آشنا شوید.
♫
نمونه صوتی از سبک محصولات صوتی ما
پیش‌نمایش کوتاهی از سبک پادکست های صوتی محصولات ما
پخش آنلاین
برای تجربه بهتر، می‌توانید از هدفون استفاده کنید.
تگ‌ها: Assembly Language Computer Architecture DOS Programming Hardware Interaction IBM PC IBM PC Hacking low-level programming PC programming Peter Norton Retro Computing System Control System Programming برنامه‌نویسی سطح پایین برنامه‌نویسی سیستمی معماری کامپیوتر

نظرات

هنوز نظری ثبت نشده است.

وارد شوید تا نظر ثبت کنید.