پیامک

پیامک یا اس‌ام‌اس (SMS Short Message Servic به معنی سرویس پیام کوتاه) سرویسی برای تبادل پیام‌های متنی از طریق تلفن‌های همراه (و برخی وسیله‌های همراه دیگر مانند رایانه جیبی) و گاه برای رایانه‌های شخصی) است. پیام کوتاه یکی از فعالیت‌های پرسود برای شرکت‌های مخابراتی محسوب می‌شود و پیش‌بینی می‌شود تا سال ۲۰۱۲ درآمد حاصل از این خدمات به ۶۷ میلیارد دلار در سال برسد.






این تکنولوژی در سال ۱۹۹۲ در گروه سما تلکام شرکت مخابراتی ودافون در انگلیس اختراع شد. نیل پاپ‌ورت یکی از مهندسین این شرکت که در ساخت این تکنولوژی مشارکت داشت در ۳ دسامبر ۱۹۹۲ اولین پیام کوتاه را فرستاد. در آن زمان تلفن های همراه صفحه کلید نداشتند و برای نوشتن پیام کوتاه از کامپیوتر استفاده شد. این سیستم در واقع به عنوان یک پیجر اداری برای گزارش رفت‌وآمد مدیران شرکت‌ها به منشی و دبیرخانه طراحی شده بود اما به مرور زمان استفاده از آن گسترش یافت به طوری‌که تا بیست سال بعد نقشی محوری در نحوه برقراری ارتباط میان انسان‌ها پیدا کرد. در سال ۲۰۱۱ حدود ۱۵۰ میلیارد پیام کوتاه فقط در بریتانیا ارسال شده است.

پیامک از سال ۱۳۸۱ وارد ایران شد و تا پنج سال بعد فقط از نام اختصاری انگلیسی اس‌ام‌اس برای آن استفاده می‌شد. در سال ۸۶ فرهنگستان زبان و ادبیات فارسی واژه‌های پیامک و پیام کوتاه را به عنوان برابرهای فارسی این واژه تصویب کرد.






محبوبیت خدمات پیام کوتاه

استفاده از خدمات پیام کوتاه در بین مردم جهان از محبوبیت زیادی برخوردار است. به عقیده بسیاری از مردم، استفاده از این خدمات به دلیل «ارزان بودن» به سرعت فراگیر شده‌است. در حال حاضر ۸۳ درصد از کاربران انگلیسی و ۷۹ درصد از کاربران آلمانی تلفن همراه از سرویس پیام کوتاه استفاده می‌کنند. همچنین پیش‌بینی شده‌است که تعداد پیام‌های ارسالی تا سال ۲۰۱۲ به ۳٫۷ تریلیون برسد. این رقم دو برابر تعداد پیام‌های کنونی است.






خدمات پیام کوتاه در ایران

استفاده از خدمات پیام کوتاه در ایران برای نخستین بار در سال ۱۳۸۱ مورد بهره‌برداری قرار گرفت. از این سال به بعد استفاده از پیام کوتاه به‌تدریج در بین کاربران ایرانی تلفن همراه فراگیر شد. در سال ۱۳۸۵، ۸ میلیارد پیام کوتاه در ایران مبادله شد. در این سال روزانه ۲۰ میلیون پیام کوتاه توسط کاربران تلفن همراه رد و بدل می‌گردید که این رقم در روزهای خاص و اعیاد مختلف بیشتر می‌شد.

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






ارسال پیام کوتاه از طریق تلفن ثابت

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





زبان پیامکی
زبان پیامکی (به انگلیسی: SMS language) به اصطلاحات اختصاری استفاده شده در پیامک‌ها و چت روم‌ها و شبکه‌های مجازی اجتماعی اطلاق می‌شود. براساس اهمیت






اهمیت

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

در یک نگاه زبان پیامکی را می‌توان گویشی نو زاد در زبان دانست که واژگان و اعداد را در هم آمیخته تا مختصرترین واژگان را برا بیان مقصود بسازد.






پیدایش

پیدایش زبان پیامکی به دوره استفاده از تلگراف بر می‌گردد. زمانی که واژگانی نظیر TEXT را برای سریع نوشتن بصورت txt می‌نوشتند. بغیر از حذف واکه‌های واژه با ترکیب اعداد و حروف نیز باز هم می‌شد واژگان کوتاه تری نوشت برای مثال برای واژه انگلیسی later می‌توان از عبارت سه کاراکتری l8r استفاده کرد.

استفاده از ابزارهای چت رشد زبان پیامکی را سرعت بخشید.افراد چت کننده برای سرعت بخشیدن به کار کم کم واژه‌های اختصاری ای را برای عبارات بزرگ ساختند. بطور مثال برای عبارت انگلیسی be right back از عبارت BRB که از ترکیب حرف اول این واژه‌ها ساخته شده بود استفاده کردند.






ساختار

ساخت واژه‌های زبان پیامکی، فرمول‌های ساده‌ای دارند. اولین فرمول همان نشان اختصاری است که از ترکیب حروف اول کلمات بدست می‌آید. مانند موارد زیر

brb = be right back = برمی‌گردم
dc = disconnect = قطع ارتباط شبکه
on= online = آنلاین
off = offline = آفلاین
lol= laugh out loudly = خندیدن با صدای بلند
np= no problem = ایرادی ندارد
wb= welcome back= خوش برگشتی
asl= age/ sexuality/ location = سن/جنسیت/محل زندگی
ty= thank you = متشکرم
so so= نه زیاد خوب نه زیاد بد
glhf = good luck have fun = وقت خوبی داشته باشید و شاد باشی
bb = bye bye = خداحافظ







روش دیگر استفاده از نام حروف و اعداد است که شبیه یک واژه هستند. مانند موارد زیر:

you = U = شما
your = UR = برای شما
c u= see you = میبینمت
s2a=send too all=ارسال برای همه
nf = net freind= دوست اینترنتی
ir3l=irancell=ایرانسل
w8=wait=انتظار

در چت به زبان فارسی با حروف انگلیسی (فینگلیش)از این روش بصورت محلی بسیار استفاده می‌شود. مانند نمونه‌های زیر:

@sa = ساعت
mer۳۰ = مرسی
۲A = دعا
۳۰nama = سینما
2ost=دوست
2khtar=دختر

در برخی موارد هم حروف صدادار یک واژه حذف می‌شوند:

tnx = thanks = ممنون
BA=بیا

در برخی موارد هم از ترکیب چند روش استفاده می‌شود:

uw = your welcome = خواهش می‌کنم






فراپیام
فراپیام یا خدمات پیام چندرسانه‌ای یا ام‌ام‌اس (به انگلیسی: Multimedia Messaging Service یا MMS) استانداردی ارتباطی برای فرستادن پیام‌هایی است که دارای عناصر چندرسانه‌ای (مثل عکس، صدا، ویدیو، متن فرمت‌دار) هستند. پیام چندرسانه‌ای، توسعه‌ای از استاندارد پیامک است، که امکان فرستادن پیام‌هایی با طول بیش‌تر، و با بهره از پروتکل کاربردی بیسیم برای نمایش محتوا را فراهم می‌کند. رایج‌ترین استفادهٔ آن، فرستادن عکس از گوشی‌های دوربین‌دار است.





رایانامه

رایانامه یا ای‌میل (به انگلیسی: email) به پیامی رقومی (دیجیتالی) گفته می‌شود که در شبکه‌ای رایانه‌ای از یک فرستنده به یک یا چند گیرنده فرستاده می‌شود. سرویس ایمیل یا رایاپیک (به انگلیسی: e-mail service) سامانه‌ای است که این خدمات را ارائه می‌کند. نشانی پست الکترونیکی یا رایانشانی (به انگلیسی: e-mail address)، نشانی است که برای رایانامه مشخص شده‌است.

یکی از کاربردهای اینترنت فرستادن و دریافت نامه‌های الکترونیکی است؛ نامهٔ الکترونیکی پرونده‌ای است که از طریق شبکهٔ اینترنت برای مخاطبی که دارای رایانشانی است، فرستاده می‌شود.

اگر شما دارای یک پست الکترونیکی روی شبکه اینترنت باشید و برایتان یک رایانامه فرستاده شده باشد، این رایانامه روی دستگاه کارساز شبکه‌ای که به آن متصل هستید باقی می‌ماند تا شما به شبکه وصل شوید، سپس با پیام ((نامهٔ تازه)) روبرو می‌شوید که می‌توانید به کمک نرم‌افزارهای مورد استفاده خود آن را بخوانید و به آن پاسخ دهید.






تاریخچه

درباره نحوه ابداع و به‌کارگیری ایمیل اختلاف نظر وجود دارد.






برابر فارسی برای ای‌میل

واژۀ مرکب انگیلسی electronic mail به شکل گرته‌بردارانه به بسیاری از زبان‌های جهان راه یافته است. به سخن دیگر، هر یک از دو واژۀ این ترکیب جداگانه به زبان‌های مقصد برگردانده شده و سپس در آن زبان‌ها واژۀ مرکبی شکل داده‌اند؛ برای نمونه در فرانسوی به courrier électronique، در آلمانی به elektronische Post، در عربی به برید إلکترونی، در روسی به электронная почта و در فارسی به نامۀ الکترونیک و پست الکترونیک برگردانده شده است.

طولی نکشید که واژۀ مرکب انگیلسی electronic mail در خود این زبان به صورت کوته‌نوشت email درآمد و کاربرد گسترده یافت. از آن پس همین صورت کوته‌نوشت هم به بسیاری از زبان‌های دیگر راه یافت (نگاه کنید به صفحۀ مربوط به همین واژه در ویکی‌پدیای دیگر زبان‌ها). این وام‌واژه در فارسی به صورت ایمیل و ای‌میل نوشته می‌شود.

واژه‌های رایانامه و پیام‌نگار از جمله پیشنهادهای فرهنگستان برای نام‌گذاری این پدیده در فارسی هستند که البته هنوز به تصویب نهایی نرسیده‌اند. تا امروز (10 آبان 1392) وبگاه فرهنگستان برابر تصویب‌شده‌ای برای این پدیده منتشر نکرده است. با این حال در همین وبگاه، در صفحۀ ارتباط با فرهنگستان، به جای email واژۀ پیام‌نگار به کار رفته است.

در واژۀ رایانامه جزء رایا کوتاه‌شدۀ رایانه است (مانند e که کوتاه‌شدۀ electronic است). به سخن دیگر، بدین‌سان در انگلیسی و فارسی برای ساختن واژه‌های اینترنتی و رایانه‌ای یک پیشوند ساخته شده است. به این فرایند دستوری‌شدگی می‌گویند. پیشوند «رایا-» هم در فارسی مانند پیشوند -e در انگلیسی نشان‌دهندۀ رایانه‌ای و اینترنتی بودن چیزی است.

از زمرۀ نهادها و مرجع‌های رسمی که واژۀ رایانامه را پذیرفته‌اند، شورای عالی انفورماتیک است که در «واژه‌نامۀ مرجع برای ترجمۀ محیط لینوکس»، Electronic Mail را نامۀ الکترونیکی و E-mail را رایانامه ترجمه کرده است.






پروتکل‌ها

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






نرم‌افزارهای دریافت و ارسال ایمیل

برای فرستادن و دریافت ایمیل، نرم‌افزارهای گوناگونی رایج است از جمله مایکروسافت آوت لوک که تحت ویندوز است و همچنین نرم‌افزار اوولوشن یا Kmail که تحت سیستم‌عاملهای مبتنی بر یونیکس مانند گنو/لینوکس کار می‌کند و یا نرم‌افزارهای مبتنی بر وب مانند squirrelmail.






سرویس‌های ایمیل

از جمله خدمات‌دهندگانی که به صورت رایگان به افراد، یک پست الکترونیک (ایمیل) ارائه می‌دادند می‌توان به موارد زیر اشاره کرد:

جیمیل
یاهومیل
هات‌میل
آمریکن آنلاین





گفتگوی اینترنتی
گپ یا چت در فارسی اصطلاحی به معنای گفتگوی اینترنتی است. اگرچه فرهنگستان زبان فارسی واژه گپ را معادل این واژه قرار داده‌است اما این واژه چندان مورد استقبال عمومی قرار نگرفته‌است. این واژه خلاصه شده Online chat از زبان انگلیسی است.






فن آوری

در ابتدا برای چت اینترنتی از پروتوکل آی آر سی استفاده می‌شد. اما اکنون از طریق سایر پروتکل‌ها نیز این کار امکان پذیر می باشد.






نرم‌افزارهای چت

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





تلفن همراه

تلفن همراه یا گوشی همراه وسیله ایست برای ارسال و دریافت تماس تلفنی از طریق ارتباط رادیویی در پهنای وسیع جغرافیایی. منظور از موبایل یا گوشی همراه یا تلفن سلولی وسیله‌ای است که برای اتصال به شبکهٔ تلفن همراه به کار می‌رود. این وسیله اولین بار توسط شرکت امریکایی موتورولا در تاریخ 3 آوریل 1973 با وزنی نزدیک به یک کیلوگرم تولید شد. موبایل نسل‌های گوناگونی دارد و توسط شرکت‌های سازنده گوناگونی تولید می‌شود و به فروش می‌رسد. برخی از شرکت‌های بزرگ تولیدکننده گوشی همراه در دنیا شامل نوکیا٬ سامسونگ الکترونیکس٬ ال‌جی الکترونیکس٬ موتورولا٬ سونی اریکسون٬ اپل و اچ‌تی‌سی هستند.

در تلفن‌های همراه به صورت معمول یک مجموعه نرم‌افزار یا سیستم‌عامل برای کنترل سخت‌افزار به کار می‌رود و برنامه‌های جانبی توسط سیستم‌عامل اجرا می‌شوند. از سیستم‌عامل‌های معروف برای تلفن همراه، می‌توان به سیستم‌عامل اندروید (android) و سیمبیان اشاره کرد. حذف شود.
بررسی بلوک‌های داخلی تلفن همراه






بلوک RF

این بلوک متشکل از قطعاتی است که وظیفه آن‌ها ارتباط دادن گوشی به BTS است؛ در حقیقت بلوک RF فرکانس GSM را از BTS دریافت کرده، سپس اطلاعات روی آن را جدا نموده و به واحدهای دیگر موبایل می‌دهد. به زبان دیگر بلوک RF وظیفهٔ تبدیل فرکانس بالای GSM را به فرکانس کمتری به نام IF بر عهده دارد.

امواج موجود در فضا توسط آنتن موبایل دریافت شده و وارد قطعه‌ای به نام آنتن سوییچ می‌شوند. آنتن سوییچ وظیفه تعیین حالت فرستندگی یا گیرندگی آنتن را به عهده دارد. بسته به این که موبایل سازگار با چند باند GSM باشد، تعداد پایه‌های آنتن سوییچ متفاوت خواهد بود. آنتن سوییچ برای هر باند GSM، آنتن را به یک خروجی به نام RX و یک ورودی به نام TX وصل می‌کند. در حقیقت آنتن سوییچ مانند یک کلید است که با فرمان‌هایی آنتن را مرتباً به خط RX یا به TX متصل می‌کند. در بلوکی که مشاهده کردید، موبایل قابلیت کار با دو باند GSM900 و GSM1800 را دارد. بنابراین آنتن سوییچ دو خروجی RX و دو ورودی TX خواهند داشت که در شبکه‌های تلفن ایران از آن جایی که GSM 900 است خط RX و TX باند ۱۸۰۰ بدون استفاده خواهد بود. آنتن سوییچ یکی از قطعات حساس برد موبایل است و خرابی در آن باعث به وجود آمدن عیوبی از قبیل پرش آنتن یا نداشتن دریافت یا ارسال خواهد شد. در مورد سلف و خازن قبل از اتصال آنتن به آنتن سوییچ نیز از آن جایی که امپدانس خروجی آنتن بسیار کم است و از طرفی امپدانس ورودی آنتن زیاد است، باید قبل از اتصال این دو، عمل تطبیق امپدانس توسط قطعه‌ای انجام شود. معمولاً در مدارات، قسمت آنتن موبایل از یک سلف که به صورت موازی بین آنتن و زمین بسته می‌شود استفاده تشکیل می‌شود. این سلف می‌تواند باعث عمل تطبیق امپدانس بین آنتن و آنتن سوییچ شده و مانع از هدایت جریان DC بین این دو واحد گردد تا این دو واحد اثر منفی در عملکرد یکدیگر نداشته باشند. وظیفه فیلتر SAW حذف فرکانس‌های کانال همسایه و فرکانس‌های مزاحم است. خط خروجی RX از آنتن سوئیچ وارد SAW شده و بعد از آن فرکانس‌های مزاحم حذف می‌شود و فقط فرکانس‌های باند GSM در خروجی آن دیده می‌شود. SAW همان‌گونه که فرکانس‌های مزاحم را حذف می‌کند، فرکانس‌های اصلی GSM را هم خیلی ضعیف می‌کند. برای تقویت سیگنال‌های دریافتی GSM بعد از SAW از یک تقویت کننده به نام LNA استفاده می‌شود.

آی‌سی RF: به این آی‌سی HAGAR هم گفته می‌شود که اصلی‌ترین قطعه بلوک RF است و وظیفه آن عمل مدولاسیون و دمودلاسیون است. مدولاسیون به سوار کردن اطلاعات روی یک موج گفته می‌شود، در این صورت با توجه به این که موج می‌تواند در فضا منتشر شود اطلاعات ما نیز همراه موج جابجا می‌شود. به موجی که اطلاعات روی آن سوار می‌شود، موج حامل گویند، یکی از وظایف آی سی HAGER انجام این عمل است. عمل مدولاسیون برای اطلاعاتی که از موبایل به BTS ارسال می‌شود انجام می‌گردد. دمودولاسیون به عمل جداسازی اطلاعات از روی فرکانس حامل می‌گویند. این عمل نیز توسط آی سی HAGER انجام شده و روی سیگنال‌های دریافتی از BTS انجام می‌شود.

کریستال: برای مدولاسیون و دمودولاسین، آی سی HAGER نیاز به فرکانس دارد. این فرکانس توسط قطعه‌ای به نام کریستال که معمولاً در کنار آی‌سی RF قرار دارد تولید می‌شود. کریستال مولد فرکانس بسیار دقیقی است که در بسیاری از مدارهای الکترونیکی به عنوان تولید کننده فرکانس یا پالس ساعت از آن استفاده می‌شود. کریستال که اسیلاتور نیز نامیده می‌شود به صورت یک قطعه دو، سه یا چهار پایه است. چند خازن به عنوان فیلتر در داخل اسیلاتور قرار می‌گیرد.

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

آی سی VCO: یک گوشی موبایل بایستی بتواند روی فرکانس‌های مختلفی که BTS هر منطقه روی آن تنظیم شده قرار گیرد تا با آن ارتباط پیدا کند. به بیان دیگر آی سی HAGER روی فرکانس‌های مختلفی باید بتواند مدولاسین و دمودلاسین انجام دهد. این عمل مستلزم این است که بتوان فرکانس حامل HAGER را با دقت زیاد تغییر داد، این عمل در موبایل توسط قطعه‌ای به نام VCO انجام می‌شود.






بلوک AF

بلوک AF (واحد صدای دستگاه) وظیفه تبدیل اطلاعات دریافتی از واحد RF به صدا را بر عهده دارد. همچنین صدایی که باید از موبایل به BTS منتقل شود، قبل از ارسال وارد واحد AF می‌شود که پس از یکسری تبدیلات و آماده‌سازی از طریق واحد RF منتقل می‌شود. در حقیقت واحد AF رابط بین کاربر موبایل و واحد RF است. این بلوک از یک طرف به میکروفون و بلنگو و از طرف دیگر به بلوک RF متصل است.

جابجایی اطلاعات بین موبایل و BTS به صورت دیجیتال است. دیجیتال، یعنی منطق صفر و یک. بنابراین می‌توان نتیجه گرفت که هر گوشی در یک ثانیه فقط مدت زمان کوتاهی را برای دریافت یا ارسال در اختیار دارد. گوشی در لحظهٔ داشتن کانال می‌تواند اطلاعات را جابجا کند، ولی در لحظه‌ای که فرکانس در اختیار گوشی دیگری است، نمی‌تواند به BTS اطلاعات انتقال دهد و این بدین مفهوم است که دائماً ارتباط بین گوشی و BTS قطع و وصل می‌شود که باعث می‌شود که صدا نیز قطع و وصل شود. برای رفع مشکل اگر صدا به صورت دیجیتال باشد، می‌توان آن را روی حافظه نگهداری کرد و زمان کانالدار بودن موبایل، تمامی اطلاعات حافظه را منتقل کرد؛ بدون این که بخشی از صدا در لحظات قطع و وصل از بین برود.






بلوک MCU

کنترل عملکرد بلوک‌های مختلف در موبایل بر عهده این واحد است. این واحد از قطعات مختلفی مثل آی‌سی پردازشگر و حافظه‌ها تشکیل شده است که توسط یک برنامه سیستم‌عامل می‌تواند کل گوشی را کنترل کند. برنامه سیستم‌عامل توسط طراح گوشی در یکی از حافظه‌های گوشی ذخیره می‌شود. باید توجه داشت که آی‌سی CPU فقط پردازش کننده اطلاعات و عملکرد آن تحت تاثیر برنامه سیستم‌عامل است.






بلوک UI

این بلوک که به آن رابط (کاربر) نیز گفته می‌شود وظیفه راه اندازی کلیه اعلام کننده‌ها از قبیل زنگ، موتور لغزاننده و LEDهای روشن کننده صفحه نمایشگر و صفحه کلید در شب را بر عهده دارد. در بعضی از گوشی‌های موبایل بلوک UI به صورت یک آی سی ساخته می‌شود و در بعضی گوشی‌ها قسمت‌های مختلف آن ترانزیستوری است و به صورت مجزا روی برد قرار می‌گیرد.






بلوک منبع تغذیه و شارژینگ

منبع تغذیه موبایل واحدی است که ولتاژ لازم بلوک‌های دیگر را از طریق باتری فراهم می‌کند. واحد منبع تغذیه از رگولاتورهای مختلفی تشکیل شده و داخل یک بسته بندی قرار دارد. این بسته بندی به آی‌سی CCONT موسوم است. واحد شارژینگ نیز مجموعه قطعاتی است که از طریق ولتاژ دریافتی از آداپتور، باتری را شارژ می‌کند. معمولاً این واحد نیز از یک آی‌سی به نام CHAPS تشکیل شده‌است. آی‌سی CCONT و CHAPS با یکدیگر در ارتباط هستند، زیرا آی‌سی CHAPS برای شارژ باتری بایستی از CCONT کنترل شود.






COBBA

در بلوک AF از یک آی‌سی به نام COBBA استفاده می‌شود. این آی‌سی مبدل سیگنال‌های آنالوگ به دیجیتال و برعکس است. امواج دریافتی آنتن بعد از این که توسط آی‌سی RF دمودولاسیون شدند با خطوط RX وارد آی‌سی COBBA در واحد AF می‌شوند. این آی‌سی ابتدا سیگنال‌های دریافتی از RF را توسط خطوط ارتباطی PCM به بلوک MCU می‌دهد. در این بلوک اطلاعات از طریق آی‌سی CPU روی حافظه موقت گوشی ریخته می‌شود. سپس آی‌سی COBBA دوباره از طریق همان خطوط ارتباطی، اطلاعات را از روی حافظه موقت خوانده و به سیگنال آنالوگ تبدیل می‌کند که از طریق بلندگو قابل استفاده خواهد شد. به همین طریق برای اطلاعاتی که بایستی از موبایل خارج شود، صدایی که توسط میکروفون دریافت می‌شود، به صورت سیگنال آنالوگ است. این سیگنال بعد از ورود به آی‌سی COBBA، تبدیل به صدای دیجیتال دیجیتال می‌شود. این صدا از طریق خطوط PCM به واحد MCU منتقل می‌شود تا در حافظه موقت نگهداری شود و به محض کانال‌دار شدن موبایل تمامی اطلاعات قسمت میکروفون از طریق واحد RF به BTS ارسال می‌شود.






PCM

PCM یکی از روش‌های انتقال اطلاعات بین دو واحد است. این واحد خطوط ارتباطی بین آی‌سی COBBA و CPU بوده و در نقشه‌ها از آن به عنوان خطوط PCM نام برده می‌شود. این انتقال به صورت کد شده انجام می‌شود که انواع آن RX و TX است.

1- خطوط PCM TX مربوط به مسیر جابجایی اطلاعات دیجیتال میکروفون به حافظه؛

2- خطوط PCM RX مربوط به مسیر انتقال اطلاعات دیجیتال دریافتی به حافظه.

خطوط PCM TX و PCM RX در نقشه‌های گوشی‌ها بین آی سی COBBA و آی‌سی CPU مشخص می‌باشد.






آنالوگ و دیجیتال

سیگنال آنالوگ به آن دسته از سیگنال‌هایی اطلاق می‌شود که مقدار ولتاژ آن در لحظات مختلف در حال تغییر باشد؛ به این صورت که در یک لحظه ۲ ولت، لحظه‌ای دیگر ۳ ولت و به همین صورت در حال تغییر باشد. این سیگنال می‌تواند توسط یک میکروفون ساخته شود. ماهیت تغییرات سیگنال آنالوگ، به عنوان مثال صدا، به مولد آن ،که می‌تواند صدای یک انسان باشد، بستگی دارد. سیگنال‌های آنالوگ را در آی‌سی‌های حافظه نمی‌توان ذخیره کرد. همچنین در انتقال آن نیز امکان نویز پذیری بالا است. در مدارات منطقی و کنترلرها اگر بخواهیم یک سیگنال آنالوگ را وارد کنیم باید آن را به دیجیتال تبدیل کنیم. دیجیتال یعنی صفر و یک، در حقیقت در سیستم دیجیتال تغییرات در لحظات مختلف وجود دارد، ولی همیشه این تغییرات به صورت صفر و یک است. منظور از صفر و یک، دو سطح منطقی است. ما می‌توانیم صفر منطقی را به سطح ولتاژ صفر ولت و یک منطقی را به سطح ولتاژ پنج ولت تعریف کنیم. در این صورت سطوح ولتاژ دیگری به غیر صفر و پنج ولت نخواهیم داشت. مزیت دیجیتال در ذخیره سازی آن توسط آی‌سی حافظه و همچنین انتقال راحت آن با کیفیت خوب است. برای تبدیل سیگنال آنالوگ به دیجیتال روش‌های مختلفی وجود دارد. اصول تبدیل آن به این صورت است که ابتدا از آنالوگ در لحظات مشخص نمونه‌برداری می‌کنیم، سپس نمونه‌ها توسط یک مبدل به دیجیتال تبدیل می‌شود. هر چه تعداد نمونه گیری‌ها از سیگنال آنالوگ بیشتر باشد، ما توانسته‌ایم آنالوگ را با کیفیت بهتری به دیجیتال تبدیل کنیم. فقط بایستی این مطلب را در نظر بگیریم که افزایش تعداد نمونه برداری‌ها باعث افزایش حجم تبدیل خواهد شد. طریقه تبدیل آنالوگ به دیجیتال لازم است در تبدیل مجموع ارزش بیت‌هایی که یک هستند، برابر با مقدار ولتاژ آنالوگ شود. بیت‌های به دست آمده را می‌توان توسط سلول‌های حافظهٔ موقت یا دائم ذخیره کرد تا در زمان‌های لازم از آن استفاده کنیم. این عمل در موبایل انجام می‌شود و صدای میکروفون ابتدا به دیجیتال تبدیل شده، سپس در حافظه موقت موبایل قرار می‌گیرد تا در لحظه داشتن کانال ترافیکی یک جا بیت‌ها را ارسال کنیم. این باعث می‌شود که در لحظاتی که BTS کانالی را از موبایل می‌گیرد، صدای مشترک در موبایل ذخیره شده و به صورت منقطع به مخاطبین نرسد. برای صدای دریافتی نیز این عمل انجام می‌شود، فقط در آن حالت باید آی‌سی COBBA مجهز به یک مبدل D to A شود تا بتوانیم اطلاعا دیجیتال دریافتی از BTS را به آنالوگ تبدیل کنیم. به تبدیل آنالوگ به دیجیتال باشد. هر چه فرکانس سیگنال آنالوگ بیشتر باشد، لازم است تعداد نمونه برداری‌ها افزایش یابد تا امکان تبدیل تغییرات سریع آن را داشته باشیم.






بلند گو

Earpiece یا COBBA زمانی که تبدیلات را انجام داد باید خروجی آنالوگ را به بلند گو بدهد. معمولاً در بعضی از بردهای موبایل قبل از اتصال سیگنال COBBA به بلند گو از دو مقاومت محدود کننده به صورت سری با بلند گوهای موبایل استفاده می‌کنند.






میکروفن

Speaker برای دریافت صدا و انجام تبدیلات و ارسال، از یک میکروفون خازنی در موبایل استفاده می‌شود. میکروفون خازنی معمولاً از یک صفحه کریستالی است که به صدا حساس است و همراه آن یک ترانزیستور تقویت کننده وجود دارد. کیفیت دریافت میکروفون خازنی در مقایسه با انواع دیگر میکروفون‌ها بسیار زیاد است که یکی از دلایل آن داشتن ترانزیستور تقویت کننده داخل میکروفون است. ترانزیستور میکروفون جهت تقویت نیاز به ولتاژ DC دارد. این ولتاژ را بایستی توسط قطعاتی در برد موبایل فراهم کنیم. هرچه سطح ولتاژ را افزایش دهیم، حساسیت و قدرت دریافتی میکروفون بیشتر می‌شود. در بعضی از موبایل‌ها این ولتاژ توسط آی سی COBBA ساخته می‌شود و قطعه خارجی دیگری نداریم، ولی در بعضی از موبایل‌ها این ولتاژ توسط یک ترانزیستور در کنار آی سی COBBA فراهم می‌شود. البته راه اندازی ترانزیستر از طریق آی سی COBBA است.






اثرات امواج تلفن همراه بر سلامت انسان

نگرانی‌ها دربارهٔ اثرات امواج تلفن همراه بر سلامت انسان با رشد بیش از حد تلفن‌های بی‌سیم همراه (۲ میلیارد در آگوست ۲۰۰۵) بیشتر شده‌است. این نگرانی‌ها به خاطر این هستند که تلفن همراه از خود امواج الکترومغناطیسی در مقیاس مایکروویو ساطع می‌کند.






معروف‌ترین سیستم‌عامل‌های تلفن همراه

iOS
Google Android
لینوکس
Palm OS
RIM Blackberry
Symbian OS
Windows Mobile
بادا bada
Firefox OS







اولین تلفن همراه در ایران

اولین تلفن همراه موجود در ایران که شکل و شمایلی به تلفن‌های همراه امروزی ندارد، متعلق به ناصرالدین شاه بود.

شکل و شمایل این تلفن همراه که در سال ۱۲۳۰ تولید شده است، به تلفن‌های همراه امروزی شباهتی ندارد. این تلفن همراه در سفرها همراه ناصرالدین شاه بوده و در زمان نیاز به کابل‌های کشیده شده بین راه وصل و با مخاطب مورد نظر تماس تلفنی برقرار می‌شده است این تلفن دارای راهنمای فارسی بوده و ساخت کارخانه «البیس» شهر زوریخ می‌باشد





تلفن هوشمند

تلفن هوشمند (به انگلیسی: Smartphone) به تلفن همراهی گفته می‌شود که توانایی‌های پیشرفته تر و قدرت محاسبات بیشتر از «تلفن مرکب» (feature phone) ارائه می‌دهد.

گوشی های هوشمند یا Smartphone گوشی های موبایل پیشرفته با قابلیت های خاص و کاربردهایی نظیر کامپیوترهای شخصی (PC) هستند. بیشتر گوشی های هوشمند دارای دوربین هستند

قابلیت هایی مثل اتصال به اینترنت و ایمیل و تنظیمات مشخص را نیز دارند.

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

این گوشی های هوشمند دارای برخی اینترفیس های اضافه مثل QWERTY، صفحه نمایش لمسی و یا حتی دسترسی مطمئن به ایمیل (همان طور که در Black Berry هم وجود دارد) هستند.

بنابراین تفاوت های مهم گوشی های هوشمند و گوشی های معمولی می تواند در زمینه قیمت و قابلیت های سطح بالای این گوشی ها باشد. مثلاً گوشی های هوشمند ۲۰۰۷ همگی دارای پشتیبانی کامل و پیشرفته ایمیل هستند.

امروزه بیشتر موبایل ها برخی از برنامه های ساده PDA مثل دفترچه تلفن، تقویم و لیست وظایف را دارا هستند، البته گوشی هایی که دارای پلات فرم های BREW یا Java ME اجازه نصب کردن برخی برنامه های جانبی را می دهند، اما این گوشی ها در زمره گوشی های هوشمند قرار نمی‌گیرد.

در حال حاضر گوشی های زیادی از نوع BREW هستند که قابلیت و کارایی PDAها را دارند، همچنین توانایی اجرای برنامه هایی که توسط شرکت های نرم‌افزاری دیگر تولید شده اند یا اصطلاحاً برنامه های third - party داشته و دارای صفحه نمایش های بزرگ ۳۲۰*۲۴۰ پیکسل هستند، اما نمی توان آنها را smart phone نامید.





رایانه جیبی

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

تقریباً همهٔ پاکت پی‌سی‌ها از سیستم‌عامل ویندوز موبایل استفاده می‌کنند.

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






برخی امکانات پاکت پی سی

• موبایل ۴ باند: نسل سوم تلفنهای همراه (3G) را با دارا بودن سیستم‌عامل ویندوز، کارایی و توانمندی فراتری را نسبت به موبایلهای موجود جهت برقراری و ساماندهی ارتباطات در اختیار کاربران قرار می‌دهند.

• دوربین ۳ مگاپیکسل: با بهره‌مندی از تواناییهای دوربین 3 مگاپیکسلی (همراه فلاش) همواره و در هر لحظه قادر به ثبت عکس و فیلم از لحظه‌های تکرار نشدنی محیط اطراف خواهید بود.

• قابلیت اتصال آسان به اینترنت : در محیط آشنای اینترنت اکسپلورر به جستجو در میان سایت‌های مورد علاقه و نیاز خود بپردازید. امکانات اینترنت برای تجار فرصت بررسی لحظه به لحظه تحولات و تغییرات بهای کالاها، وضعیت سهام بورس و اخبار اقتصادی را فراهم می‌کند. (ارتباط از طریق سیم کارت، خط تلفن ثابت یا وای-فای)

• ارسال و دریافت گپ، پیام چندرسانه‌ای، پیامک، ای‌میل: با برنامه Microsoft Outlook نامه‌های الکترونیکی خود را در هر زمان و مکان دریافت و ارسال نمایید. با همراه داشتن یک پاکت پی‌سی دیگر هیچ نامه‌ای را از دست نخواهید داد.

• ارسال و دریافت فکس : فکس‌های خود را دریافت کنید، در صورت تمایل با دست خط خود ارسال کنید و هرگاه به دفتر کارتان بازگشتید آنها را از روی حافظه دستگاه برای بایگانی چاپ نمایید.

• برنامه مایکروسافت آفیس : فایلهایتان را در محیط Excel یا Word یا PowerPoint با سازگاری صد در صد با کامپیوترتان اجرا نمایید.

• قابلیت ارتقاء حافظه: قابلیت پذیرش انواع کارتهای حافظه گیگا بایتی، به شما امکان می‌دهد که همواره فضای کافی برای ذخیره عکس، فیلم، موسیقی،e-book وبایگانی اطلاعات در دسترس داشته باشید.

• سیستم مکان یاب جهانی((GPS: موقعیت جغرافیایی خود را در هر لحظه و مکان مشاهده کرده و بهترین مسیر را برای رسیدن به مقصد انتخاب نمایید.نقشه‌ای جامع از شهرها و خیابانهای جهان همیشه همراه شماست.

• اجرای بازیهای کامپیوتری، گیرنده تلویزیون و رادیو: بازیهای سرگرم کننده و دلخواه را همراه داشته باشید و در فرصتهای مناسب تجربه و مهارت خود را بالا ببرید.

• ضبط و پخش فایلهای صوتی و تصویری: با برنامهWindows media player در هنگام استراحت یا در مسیرهای طولانی فایلهای mp3 یاmp4 را اجراء کرده یا به تماشای فیلم مورد علاقه‌تان با کیفیت DVD بپردازید و از امکانات مالتی مدیا در حرکت نیز لذت ببرید.

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

• لوازم جانبی: طیف وسیعی از لوازم جانبی، امکانات و سهولت کار با این دستگاهها را دو چندان می‌کند.کی برد، مودم هایBluetooth جهت ارتباط با اینترنت از طریق خطوط تلفن ثابت، خروجی صدا و تصویر به video projection یا نمایشگرهای بزرگ، شارژهای مسافرتی و کیف‌های گوناگون جهت محافظت و زیبایی بیشتر دستگاهها همه در دسترس شماست.






کاربردهای پاکت پی سی جهت مشاغل گوناگون

• بازرگانان و مدیران : تنظیم قرارهای ملاقات، دریافت و ارسال E-mail و فکس، مجموعه برنامه‌های Microsoft Office، تهیه نامه‌های تجاری و نمایش کالاها بصورت pdf، ضبط صوتی و تصویری مذاکرات وجلسات...

• پزشکان و پرستاران : نصب انواع نرم‌افزارهای پزشکی و دارویی، تشخیص بیماری، تشکیل پرونده بیماران بصورت دیجیتالی، صدور نسخه بصورت Text، و یا Handwriting، ذخیره عکس بیماران...

• مهندسان و طراحان : نصب و اجرای برنامه و فایلهای AutoCAD، ماشین حسابهای مهندسی با امکان رسم نمودار...

• حسابداران : نرم‌افزارهای حسابداری سازگار با windows Mobile، برنامه Excel

• دانشگاهها و موسسات آموزشی : نصب انواع نرم‌افزارهای آموزشی، کتابهای الکترونیک، دیکشنری، نمایش اسلاید وفیلم، ضبط و پخش صدا(voice Record) و تصویر کلاسها و سمینارها...

• آژانس‌های املاک : جستجو و نمایش سریع فایلهای املاک و آپارتمانها بصورت عکس و فیلم، ثبت درخواست متقاضیان...

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

• رستوران‌ها : دریافت سفارش و ارسال همزمان به صندوق و آشپزخانه، کنترل انبار

• شرکت‌های حمل و نقل : کنترل مسیر و موقعیت جغرافیایی ناوگان حمل و نقل در هر زمان





لپ‌تاپ
رایانه کیفی یا لپ‌تاپ (به انگلیسی: Laptop)، کوچک و نسبتاً سبک گفته می‌شود. وزن آن معمولاً بین ۱ تا ۷ کیلو است که به‌اندازه و مواد مصرف شده در ساخت آن بستگی دارد. این رایانه کوچک‌تر از رایانه‌های رومیزی است و می‌تواند با یک باتری کارکند و یا از یک آداپتور AC/DC خارجی تغذیه شود. بسیاری از آن‌ها چند سلول ۳ ولت دارند که در اجرای عملکرد ساعت و دیگر فرآیندها در هنگام قطع برق مفید است. لپ‌تاپ‌ها به طور کلی دارای همان اجزایی هستند که در یک رایانه رومیزی وجود دارد ولی با این تفاوت که تا جای ممکن از وزن و اندازه آنها کاسته شده‌است. لپ‌تاپ‌ها دارای صفحه نمایش بلور مایع هستند و چند طرح حافظه درآن‌ها برای RAM در نظر گرفته شده‌است. لپ‌تاپ‌ها دارای یک صفحه کلید سرخود هستند و یک ماوس نیز روی صفحه زیرین آنها وجود دارد ولی می‌توان صفحه‌کلید و ماوس خارجی و جداگانه نیز به آنها متصل کرد.






طبقات

گونه‌هایی از لپتاپ.

Umpcs

این نوع از لپتاپ‌ها اندازه بسیار کوچکی دارند و در نتیجه سیارتر از گونه‌های دیگر به حساب می‌آیند. اندازه آنها مانند PDA است و نوت‌بوک نیز خوانده می‌شوند و می‌توان آنها را روی زانو گذاشته و از آنها استفاده کرد. با این وجود در درایو سخت می‌تواند حرارت را تولید کند که عامل آسیب خواهد بود. به علت اندازه کوچک، آن‌ها ترکیبی از صفحه نمایش cm۲۰ برای کاربرها خواهند بود. آن‌ها می‌توانند صفحه کلید مینیاتوری و رابط موس داشته باشند. آن‌ها عملکرد ضعیف دارند و مولفه‌های پرانرژی هستند.







Ultraportable

این نوع از لپتاپ‌ها صفحه نمایش کوچکتر از ۱۲ اینچ به صورت مورب دارند و وزن آن‌ها کمتر از ۵-۳ پوند است. صفحه کلید آن‌ها اندازه کامل ندارد. مخاطبین اولیه آن‌ها مسافران تجاری هستند که به laptop سبک نیاز دارند. این‌ها اغلب خیلی گران هستند و دارای عمر طولانی باتری می‌باشند. Cpu با توان خانگی نیز استفاده شود. laptop از نوع نوری و باریک دارای وزن ۶-۴ پوند است و اندازه صفحه نمایش بین ۱۲ و۱۴ اینچ می‌باشد. laptop قاب بزرگ وزن ۷-۵ پوند دارد و اندازه صفحه نمایش ۱/۱۴ اینچ و ۴/۱۵ می‌باشد. ؛ رایانه جانشینی دسک تاپ: این‌نوع از لپتاپ‌ها عمدتاً در محل ثابت استفاده می‌شوند و به علت وزن و اندازه خود مطلوب نمی‌باشند. آنها فضای بیشتری را برای مولفه‌ها عرضه می‌کنند و به‌اندازه ۱۷ – ۲۰ in هستند. این‌ها دارای عمر باتری خیلی کوتاه می‌باشند که بیش از ۳ساعت نمی‌باشد زیرا سخت‌افزار جهت استفاده موثر باتری بهینه نشده‌است. گاهی اوقات آن‌ها را luggable گویند. این مثال از آنها شامل نوت بوک بازی است که می‌تواند پردازش گرافیکی سه بعدی انجام دهد.






ابزار مربوطه

ها می‌توانند بر یک طیف محاسباتی بین ابزار پرتابل قرار گیرند. نقطه استفاده آن مانند نرم‌افزار دسک تاپ است ولی نمی‌تواند محاسبات متحرک را انجام دهد. دیگر نقاط طیف عبارتند از: رایانه‌های پرتابل: این‌ها به آسانی حرکت می‌کنند و نمی‌توانند هنگام حمل استفاده شوند. زیرا به توان AC نیاز دارند. رایج‌ترین آنها osbornel می‌باشد که می‌تواند نرم‌افزار دسک‌تاپ را راه‌اندازی کند ولی حامی محاسبه متحرک نمی‌باشد.







Tablets

رایانه‌ها به شکل نوت بوک کاغذی هستند و رابط آن‌ها دارای شیار مغناطیسی است و نرم‌افزار می‌تواند با یک صفحه نمایش تماسی شناخته شود. ازسال ۲۰۰۷ رایج‌ترین آن‌ها به نام tabletpc عرضه شد که صفحه نمایش تماسی دارد. بعضی از آن‌ها صفحه کلید ندارند و قابل انتقال می‌باشند. آنها چرخش ۱۸۰ درجه دارند و بر بالای صفحه کلید تا می‌شوند. آنها عمل‌کرد محدود در محل‌های خاص داشته‌اند و می‌توانند وظایف عادی را انجام دهند. Tablet اینترنتی به شکل لوج است و می‌تواند در محاسبه متحرک استفاده شود. آنها از لینوکس استفاده می‌کنند. و می‌توانند چند برنامه را راه‌اندازی کنند ولی جایگزین رایانه نمی‌شوند. ویژگی MP3، ویدئو، مرورگر اینترنت، chat و تصویر در آنها بارز است. PDAها نیز رایانه کوچک و جیبی هستند که عملکرد محدود دارند. آن‌ها حامی محاسبه متحرک هستند هرگز هر نرم‌افزار را راه‌اندازی نمی‌کنند. رایانه‌های دستی کوچکتر هستند و تلفن هوشمند یا PDA دارای یک تلفن سلولی مکمل می‌باشد. مرزهای این مقوله‌ها مشخص نمی‌باشد. OQOUPC یک PC با اندازه PDA می‌باشد. Apple emate کوچکتر از laptop است ولی نرم‌افزار PDA را راه‌اندازی می‌کند. خط Hpomnibook نیز دارای ابزار رایانهی دستی است. سخت‌افزار نوکیا ۷۷۰ مانند PDA است و ۶۰۰۰ Zaurus درآن کاربرد داشته‌است. تنها دلیل که آنرا PDA نمی‌خوانند آن است که نرم‌افزار PIM ندارد. از سوی دیگر ۷۷۰ و Zerus می‌توانند یک نرم‌افزار linux را اجرا کنند.






تاریخچه

قبل از توسعه رایانه نوت بوک و لپ‌تاپ، عقاید مشابه ارائه شد مانند alankay که در Xerox pare در اوایل ۱۹۷۰ راه‌اندازی شد. نخستین رایانه پرتابل در ۱۹۸۱ معرفی شد و در آن از سیستم‌عامل CP/M استفاده شد اگر چه این رایانه خیلی سنگین و بزرگ بود و مانیتور کوچک CRT داشت اثر زیادی در تجارت داشته‌است. این‌ها اولین رایانه پرتابل بوده‌اند و Xerox note دوباره در PARC در ۱۹۷۶ توسعه یافت. Osbovne اندازه چرخ خیاطی پرتابل را داشت و توانست برای هواپیماهای تجاری استفاده شود. با این وجود نمی‌توان آن را با باتری راه‌اندازی کرد. در سال ۱۹۸۲ کایروپ نوع دوم سیستم را عرضه کرد که براساس CP/M طراحی شده‌است. این سیستم دو برابر درایو فلاپی می‌باشد و می‌تواند ظرفیت ۲ برابر تولید کند. یک موفقیت مربوط به Compag بود که اولین محصول آن در ۱۹۸۳ عرضه شد. رایانه IBM یک سیستم استاندارد می‌باشد و می‌تواند از نوع Dsborne به شمار رود. توان AC در راه‌اندازی آن استفاده خواهد شد. Ms- dos یک ویژگی از IBM می‌باشد که سازگاری PC ندارد. یک ماشین دیگر در سال ۱۹۸۱ عرضه شد و در سال ۱۹۸۳ به نام Epson hx۲۰ معرفی گردید. این ویژگی صفحه کلید ۶۸ بیت را دارد و باتری آن از کادمیوم نیکل است. صفحه نمایش LCD در حدود ۴ خط متن را با ۲۰ کاراکتر نشان می‌دهد. پرینتر ماتریس نقطه‌ای ۲۴ ستون به نام ترجمه گر BASIC و ۱۶KB از RAM همگی نقش مهم در این روند دارند. laptop واقعی یک gridllol بود که توسط موگارید در ۱۹۸۰- ۱۹۷۹ عرضه شد. این سیستم طرح کنترلی دارد و صفحه نمایش مسطح آن می‌تواند خمیده شود. آن‌ها با چند باتری عمل می‌کنند که به صفحه نمایش پلاسمای ۲۰۰×۳۲۰ پیکسل مجهز هستند. با این وجود در ارتش آمریکا و ناسا از طرح فضایی در طی ۱۹۸۰ استفاده شد. سازندگان grid بازده ویژه حق خود را بدست آوردند و این نوآوری متداول شد. این شرکت از دو laptop دیگر نیز استفاده کرده‌است. که sharppc ۵۰۰ و gavilansc نام دارند. آن‌ها در سال ۱۹۸۳ و ۱۹۸۴ فروخته شدند. این سیستم به نام laptop معروف است. این می‌تواند به ابزار تماسی که بر صفحه کلید قرار دارند مجهز شود. آن‌ها مانند GRID کیس کوچک دارند ولی سازگاری IBM در آن‌ها زیاد است. آن‌ها قدرت اجرایی با هر نرم‌افزاری را دارا هستند. آن‌ها صفحه نمایش LCP دارند و می‌توانند به پرینتر خارجی وصل شوند. Delmont که در ۱۹۸۴ عرضه شد مانند gaveling است که در ۱۸۶-۸ Intel استفاده گردید.
12:54 pm
کاربرد برنامه نویسی

زبان برنامه نویسی یک مکانیزم ساخت یافته برای تعریف داده‌ها، و عملیات یا تبدیل‌هایی که ممکن است بطور اتوماتیک روی آن داده انجام شوند، فراهم می‌کند. یک برنامه نویس از انتزاعات آماده در زبان استفاده می‌کند تا مفاهیم به کار رفته در محاسبات را بیان کند. این مفاهیم به عنوان یک مجموعه از ساده‌ترین عناصر موجود بیان می‌شوند(مفاهیم ابتدایی نامیده می‌شوند).





زبان‌های برنامه نویسی با غالب زبان‌های انسانی تفاوتی دارد و آن این است که نیاز به بیان دقیق تر و کامل تری دارد. هنگام استفاده از زبان‌های طبیعی برای ارتباط با دیگر انسان‌ها، نویسندگان و گویندگان می‌توانند مبهم باشند و اشتباهات کوچک داشته باشند، و همچنان انتظار داشته باشند که مخاطب آنها متوجه شده باشد. اگرچه، مجازا، رایانه‌ها "دقیقاً آنچه که به آنها گفته شده را انجام می‌دهند." و نمی‌توانند "بفهمند" که نویسنده دقیقاً چه کدی مد نظر نویسنده بوده‌است] البته امروزه برنامه‌هایی برای انجام این کار تولید شده‌اند و تلاش‌های بسیاری در این زمینه انجام شده ولی هنوز به نتیجهٔ رضایت بخشی نرسیده است[. ترکیب تعریف زبان، یک برنامه، و ورودی برنامه بطور کامل رفتار خروجی را به هنگام اجرای برنامه (در محدوده کنترل آن برنامه) مشخص می‌کند. برنامه‌های یک رایانه ممکن است در یک فرایند ناپیوسته بدون دخالت انسان اجرا شوند، یا یک کاربر ممکن است دستورات را در یک مرحله فعل و انفعال مفسر تایپ کند.در این حالت "دستور"ها همان برنامه‌ها هستند، که اجرای آنها زنجیروار به هم مرتبطند.به زبانی که برای دستور دادن به برنامه‌ای استفاده می‌شود، زبان اسکریپت می‌گویند. بسیاری از زبان‌ها کنار گذاشته شده‌اند، برای رفع نیازهای جدید جایگزین شده‌اند، با برنامه‌های دیگر ترکیب شده‌اند و در نهایت استعمال آنها متوقف شده‌است. با وجود اینکه تلاش‌هایی برای طراحی یک زبان رایانه" کامل" شده‌است که تمام اهداف را تحت پوشش قرار دهد، هیچ یک نتوانستند بطور کلی این جایگاه را پر کنند. نیاز به زبان‌های رایانه‌ای گسترده از گستردگی زمینه‌هایی که زبان‌ها استفاده می‌شوند، ناشی می‌شود:

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

یک سیر رایج در گسترش زبان‌های برنامه نویسی این است که قابلیت حل مسائلی با درجات انتزاعی بالاتری را اضافه کنند. زبان‌های برنامه نویسی اولیه به سخت‌افزار رایانه گره خورده بودند. همانطور که زبان‌های برنامه نویسی جدید گسترش پیدا کرده‌اند، ویژگی‌هایی به برنامه‌ها افزوده شده که به برنامه نویس اجازه دهد که ایده‌هایی که از ترجمه ساده به دستورات سخت‌افزار دورتر هستند نیز استفاده کند. چون برنامه نویس‌ها کمتر به پیچیدگی رایانه محدود شده‌اند، برنامه‌های آنها می‌تواند محاسبات بیشتری با تلاش کمتر از سوی برنامه نویس انجام دهند. این به آنها این امکان را می‌دهد که کارایی بیشتردر واحد زمان داشته باشند. "پردازنده‌های زبان طبیعی" به عنوان راهی برای ازبین بردن نیاز به زبان‌های اختصاصی برنامه نویسی پیشنهاد شده‌اند. هرچند، این هدف دور است و فواید آن قابل بحث است. "ادسگر دیجسترا" موافق بود که استفاده از یک زبان رسمی برای جلوگیری از مقدمه سازی ساختارهای بی معنی واجب است، و زبان برنامه نویسی طبیعی را با عنوان "احمقانه" رد کرد، "آلن پرلیس" نیز مشابها این ایده را رد کرد. مطابق با متدولوژی نامتجانس استفاده شده توسط langpop.com در سال ۲۰۰۸، ۱۲ زبان پرکاربرد عبارتند از: C, C++, C#, Java, JavaScript, Perl, PHP, Python, Ruby, Shell, SQL, and Visual Basic.



المان‌ها
تمام زبان‌های بزنامه نویسی تعدادی بلوک‌های ابتدایی برای توضیح داده و پردازش یا تبدیل آنها(مانند جمع کردن دو عدد با انتخاب یک عضو از یک مجموعه)دارند. این " عناصرابتدایی" بوسیله قوانین معناشناسی و دستوری تعریف می‌شوند که ساختار و معنای مربوطه را توضیح می‌دهند.
دستور(
syntax)

فرم سطحی یک زبان برنامه نویسی دستور آن نامیده می‌شود. غالب زبان‌های برنامه نویسی کاملاً متنی اند؛ و از دنبالهٔ متون شامل کلمات، اعداد، نشانگذاری، بسیار شبیه زبان نوشتاری طبیعی استفاده می‌کنند. از طرف دیگر، برنامه‌هایی نیز وجود دارند که بیشتر گرافیکی اند، و از روابط بصری بین سمبل‌ها برای مشخص کردن برنامه استفاده می‌کنند. دستور یک زبان ترکیبات ممکن سمبل‌ها برای ایجاد یک برنامهٔ درست را از نظر دستوری مشخص می‌کند. معنایی که به یک ترکیب سمبل‌ها داده می‌شود با معناشناسی اداره می‌شود(قراردادی یا نوشته شده در پیاده سازی منبع). از آنجا که اغلب زبان‌ها متنی هستند، این مقاله دستور متنی را مورد بحث قرار می‌دهد.

دستور زبان برنامه نویسی معمولاً بوسیله ترکیب عبارات معین(برای ساختار لغوی) و فرم توضیح اعمال(برای ساختار گرامری) تعریف می‌شوند. متن زیر یک گرامر ساده، به زبان lisp است: expression ::= atom | list atom ::= number | symbol number ::= [+-]?['۰'-'۹']+ symbol ::= ['A'-'Za'-'z'].* list ::= '(' expression* ')' این گرامر موارد ذیل را مشخص می‌کند:

یک عبارت یا atom است و یا یک لیست
یک atom یا یک عدد است و یا یک سمبل
یک عدد دنباله ناشکسته‌ای از یک یا تعداد بیشتری اعداد دهدهی است، که یک علامت مثبت و یا منفی می‌تواند پیش از آن بیاید.
یک سمبل حرفی است که بعد از هیچ یا تعدادی کاراکتر (جز فاصله) می‌آید.
یک لیست تعدادی پرانتز است که می‌تواند صفر یا چند عبارت در خود داشته باشد.

"۱۲۳۴۵"، "()"، "(a b c۲۳۲ (۱))" مثال‌هایی هستند از دنباله‌های خوش فرم در این گرامر.

همه برنامه‌هایی که از لحاظ دستوری درست هستند، از نظر معنا درست نیستند. بسیاری از برنامه‌های درست دستوری، بد فرم اند، با توجه به قوانین زبان؛ و ممکن است (بسته به خصوصیات زبان و درست بودن پیاده سازی) به خطای ترجمه و یا استثنا(exception) منتج شود. در برخی موارد، چنین برنامه‌هایی ممکن است رفتار نامشخصی از خود نشان دهند. حتی اگر یک برنامه در یک زبان به خوبی بیان شده باشد، ممکن است دقیقاً مطلوب نویسنده آن نبوده باشد.

به عنوان مثال در زبان طبیعی، ممکن نیست به برخی از جملات درست از لحاظ گرامری، معنای خاصی اطلاق کرد و یا ممکن است جمله نادرست باشد:

"ایده‌های بی رنگ سبز با خشم می‌خوابند."از نظر دستوری خوش فرم است ولی معنای مورد قبولی ندارد.
"جان یک مجرد متاهل است." از نظر دستوری درست است، ولی معنایی را بیان می‌کند که نمی‌تواند درست باشد.

این قسمت از زبان C از نظر دستوری درست است، اما دستوری را انجام می‌دهد که از نظرمعنایی تعریف نشده است(چون p یک اشاره گر خالی است، عمل p->real,p->im معنای خاصی ندارد.) complex *p = NULL; complex abs_p = sqrt (p->real * p->real + p->im * p->im);

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




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


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

یک زبان نوع گذاری شده‌است اگر مشخصات هر عملیات، نوع داده‌های قابل اجرا توسط آن را با نشان دادن نوع‌هایی که برای آنها قابل اجرا نیست، تعیین کند. برای مثال، "این متن درون گیومه قرار دارد" یک رشته‌است. در غالب زبان‌های برنامه نویسی، تقسیم یک رشته با یک عدد معنایی ندارد. در نتیجه غالب زبان‌های برنامه نویسی مدرن ممکن است اجرای این عملیات را توسط برنامه‌ها رد کنند. در برخی زبان‌ها، عبارات بی معنی ممکن است هنگام ترجمه(compile) پیدا شود(چک کننده نوع ایستا)، و توسط کامپایلر رد شود، در حالی که در سایر برنامه‌ها، هنگام اجرا پیدا شود.(چک کننده نوع دینامیک) که به استثنای در حال اجرا منتج شود(runtime exception). حالت خاص زبان‌های نوع دار زبان‌های تک نوعند. این زبان‌ها غالباً اسکریپتی و یا مارک آپ هستند، مانند rexx وSGML و فقط یک داده گونه دارند—غالباً رشته‌های کاراکتری که هم برای داده‌های عددی و هم برای داده‌های سمبلی کاربرد دارند. در مقابل، یک زبان بدون نوع گذاری، مثل اکثر زبان‌های اسمبلی، این امکان را می‌دهد که هر عملیاتی روی هر داده‌ای انجام شود، که معمولاً دنباله‌ای از بیت‌ها با طول‌های متفاوت در نظر گرفته می‌شوند. زبان‌های سطح بالا که بی نوع هستند شامل زبان‌های ساده رایانه‌ای و برخی از انواع زبان‌های نسل چهارم.

در عمل، در حالیکه تعداد بسیار کمی از دیدگاه نظریه نوع، نوع گذاری شده تلقی می‌شوند(چک کردن یا رد کردن تمام عملیات‌ها)، غالب زبان‌های امروزی درجه‌ای از نوع گذاری را فراهم می‌کنند. بسیاری از زبان‌های تولیدکننده راهی را برای گذشتن یا موقوف کردن سیستم نوع فراهم می‌کنند.



نوع گذاری ایستا و متحرک

در نوع گذاری ایستا تمام عبارات نوع‌های خود را قبل از اجرای برنامه تعیین می‌کنند(معمولاً در زمان کامپایل). برای مثال، ۱ و (۲+۲) عبارات عددی هستند؛ آنها نمی‌توانند به تابعی که نیاز به یک رشته دارد داده شوند، یا در متغیری که تعریف شده تا تاریخ را نگه دارد، ذخیره شوند.


زبان‌های نوع گذاری شده ایستا می‌توانند با مانیفست نوع گذاری شوند یا با استفاده از نوع استنباط شوند. در حالت اول، برنامه نویس بیشتر صریحاً نوع‌ها را در جایگاه‌های منتنی مشخص می‌نویسد(برای مثال، در تعریف متغیرها). در حالت دوم، کامپایلر نوع عبارات و تعریف‌ها را بر اساس متن استنباط می‌کند. غالب زبان‌های مسیر اصلی(mainstream) ایستا نوع گذاری شده، مانند C#,C++ و Java، با مانیفست نوع گذاری می‌شوند



نوع گذاری قوی و ضعیف

نوع گذاری ضعیف این امکان را ایجاد می‌کند که با متغیری به جای متغیری دیگر برخورد شود، برای مثال رفتار با یک رشته به عنوان یک عدد. این ویژگی بعضی اوقات ممکن است مفید باشد، اما ممکن است باعث ایجاد برخی مشکلات برنامه شود که موقع کامپایل و حتی اجرا پنهان بمانند.

نوع گذاری قوی مانع رخ دادن مشکل فوق می‌شود. تلاش برای انجام عملیات روی نوع نادرست متغیر منجر به رخ دادن خطا می‌شود. زبان‌هایی که نوع گذاری قوی دارند غالباً با نام "نوع-امن" و یا امن شناخته می‌شوند. تمام تعاریف جایگزین برای "ضعیف نوع گذاری شده" به زبان‌ها اشاره می‌کند، مثل perl, JavaScript, C++، که اجازه تعداد زیادی تبدیل نوع داخلی را می‌دهند. در جاوااسکریپت، برای مثال، عبارت ۲*x به صورت ضمنی x را به عدد تبدیل می‌کند، و این تبدیل موفقیت آمیز خواهد بود حتی اگر x خالی، تعریف نشده، یک آرایه، و یا رشته‌ای از حروف باشد. چنین تبدیلات ضمنی غالباً مفیدند، اما خطاهای برنامه نویسی را پنهان می‌کنند.

قوی و ایستا در حال حاضر عموماً دو مفهوم متعامد فرض می‌شوند، اما استفاده در ادبیات تفاوت دارد، برخی عبارت "قوی نوع گذاری شده" را به کار می‌برند و منظورشان قوی، ایستایی نوع گذاری شده‌است، و یا، حتی گیچ کننده تر، منظورشان همان ایستایی نوع گذاری شده‌است. بنابراین C هم قوی نوع گذاری شده و هم ضعیف و ایستایی نوع گذاری شده نامیده می‌شود.



معناشناسی اجرا

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

برای مثال، معناشناسی ممکن است استراتژی را که بویسله آن عبارات ارزیابی می‌شوند را تعریف کند و یا حالتی را که ساختارهای کنترلی تحت شرایطی دستورها را اجرا می‌کنند.


کتابخانه هسته
اغلب زبان‌های برنامه نویسی یک کتابخانه هسته مرتبط دارند(گاهی اوقات "کتابخانه استاندارد" نامیده می‌شوند، مخصوصا وقتی که به عنوان قسمتی از یک زبان استاندارد ارائه شده باشد)، که به طور قراردادی توسط تمام پیاده سازی‌های زبان در دسترس قرار گرفته باشند. کتابخانه هسته معمولاً تعریف الگوریتم‌ها، داده ساختارها و مکانیزم‌های ورودی و خروجی پرکاربرد را در خود دارد. کاربران یک زبان، غالباً با کتابخانه هسته به عنوان قسمتی از آن رفتار می‌کنند، اگرچه طراحان ممکن است با آن به صورت یک مفهوم مجزا رفتار کرده باشند. بسیاری از خصوصیات زبان هسته‌ای را مشخص می‌کنند که باید در تمام پیاده سازی‌ها موجود باشند، و در زبان‌های استاندارد شده این کتابخانه هسته ممکن است نیاز باشد. بنابراین خط بین زبان و کتابخانه هسته آن از زبانی به زبان دیگر متفاوت است. درواقع، برخی زبان‌ها به گونه‌ای تعریف شده‌اند که برخی از ساختارهای دستوری بدون اشاره به کتابخانه هسته قابل استفاده نیستند. برای مثالف در جاوا، یک رشته به عنوان نمونه‌ای از کلاس “java.lang.String” تعریف شده است؛ مشابها، در سمال تاک(smalltalk) یک تابع بی نام(یک "بلاک") نمونه‌ای از کلاس BlockContext کتابخانه می‌سازد. بطور معکوس، Scheme دارای چندین زیرمجموعه مرتبط برای ایجاد سایر ماکروهای زبان می‌باشد، و در نتیجه طراحان زبان حتی این زحمت را نیز تحمل نمی‌کنند که بگویند کدام قسمت زبان به عنوان ساختارهای زبان باید پیاده سازی شوند، و کدام یک به عنوان بخشی ازکتابخانه.


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



خصوصیات

یک زبان برنامه نویسی باید تعریفی فراهم کند که کاربران و پیاده کننده‌های زبان می‌توانند از آن استفاده کنند تا مشخص کنند که رفتار یک برنامه درست است. با داشتن کد منبع: خصوصیات یک زبان برنامه نویسی چندین قالب می‌تواند بگیرد، مانند مثال‌های زیر:

تعریف صریح دستور، معناشناسی ایستا، ومعناشناسی اجرای زبان. درحالیکه دستور معمولاً با یک معناشناسی قراردادی مشخص می‌شود، تعاریف معناشناسی ممکن است در زبان طبیعی نوشته شده باشند (مثل زبان C)، یا معناشناسی قراردادی(مثل StandardML ,Scheme)
توضیح رفتار یک مترجم برای زبان(مثل C,fortran). دستور و معناشناسی یک زبان باید از این توضیح استنتاج شوند، که ممکن است به زبان طبیعی یا قراردادی نوشته شود.
پیاده سازی منبع یا مدل. گاهی اوقات در زبان‌های مشخص شده(مثل: prolog,ANSI REXX).دستور و معناشناسی صریحاً در رفتار پیاده سازی مدل موجودند.


پیاده سازی

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

خروجی یک کامپایلر ممکن است با سخت‌افزار و یا برنامه‌ای به نام مفسر اجرا شود. در برخی پیاده سازی‌ها که از مفسر استفاده می‌شود، مرز مشخصی بین کامپایل و تفسیر وجود ندارد. برای مثال، برخی پیاده سازی‌های زبان برنامه نویسی بیسیک کامپایل می‌کنند و سپس کد را خط به خط اجرا می‌کنند.

برنامه‌هایی که مستقیماً روی سخت‌افزار اجرا می‌شوند چندین برابر سریعتر از برنامه‌هایی که با کمک نرم‌افزار اجرا می‌شوند، انجام می‌شوند.

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



تاریخچه
پیشرفت‌های اولیه

اولین زبان برنامه نویسی به قبل از رایانه‌های مدرن باز می‌گردد. قرن ۱۹ دستگاه‌های نساجی و متون نوازنده پیانو قابل برنامه نویسی داشت که امروزه به عنوان مثال‌هایی از زبان‌های برنامه نویسی با حوزه مشخص شناخته می‌شوند. با شروع قرن بیستم، پانچ کارت‌ها داده را کد گذاری کردند و پردازش مکانیکی را هدایت کردند. در دهه ۱۹۳۰ و ۱۹۴۰، صورت گرایی حساب لاندای آلونزو چرچ و ماشین تورینگ آلن تورینگ مفاهیم ریاضی بیان الگوریتم‌ها را فراهم کردند؛ حساب لاندا همچنان در طراحی زبان موثر است.

در دهه ۴۰، اولین رایانه‌های دیجیتال که توسط برق تغذیه می‌شدند ایجاد شدند. اولین زبان برنامه نویسی سطح بالا طراحی شده برای کامپیوتر پلانکالکول بود، که بین سال‌های ۱۹۴۵ و ۱۹۴۳ توسط کنراد زوس برای ز۳ آلمان طراحی شد.

کامپیوترهای اوایل ۱۹۵۰، بطور خاص ÜNIVAC ۱ و IBM ۷۰۱ از برنامه‌های زبان ماشین استفاده می‌کردند. برنامه نویسی زبان ماشین نسل اول توسط نسل دومی که زبان اسمبلی نامیده می‌شوند جایگزین شد. در سال‌های بعد دهه ۵۰، زبان برنامه نویسی اسمبلی، که برای استفاده از دستورات ماکرو تکامل یافته بود، توسط سه زبان برنامه نویسی سطح بالا دیگر: FORTRAN,LISP , COBOL مورد استفاده قرار گرفت. نسخه‌های به روز شده این برنامه‌ها همچنان مورد استفاده قرار می‌گیرند، و هر کدام قویا توسعه زبان‌های بعد را تحت تاثیر قرار دادند. در پایان دهه ۵۰ زبان algol ۶۰ معرفی شد، و بسیاری از زبان‌های برنامه نویسی بعد، با ملاحظه بسیار، از نسل algol هستند. قالب و استفاده از زبان‌های برنامه نویسی به شدت متاثر از محدودیت‌های رابط بودند.



پالایش

دوره دهه ۶۰ تا اواخر دهه ۷۰ گسترش مثال‌های عمده زبان پرکاربرد امروز را به همراه داشت. با این حال بسیاری از جنبه‌های آن بهینه سازی ایده‌های اولیه نسل سوم زبان برنامه نویسی بود:

APL برنامه نویسی آرایه‌ای را معرفی کرد و برنامه نویسی کاربردی را تحت تاثیر قرار داد.
PL/i(NPL) دراوایل دهه ۶۰ طراحی شده بود تا ایده‌های خوب فورترن و کوبول را بهم پیوند دهد.
در دهه ۶۰، Simula اولین زبانی بود که برنامه نویسی شئ گرا را پشتیبانی می‌کرد، در اواسط دهه۷۰. Smalltalk به دنبال آن به

عنوان اولین زبان کاملاً شئ گرا معرفی شد.

C بین سال‌های ۱۹۶۹ تا ۱۹۷۳ به عنوان زبان برنامه نویسی سیستمی طراحی شد و همچنان محبوب است.
Prolog، طراحی شده در ۱۹۷۲، اولین زبان برنامه نویسی منطقی بود.
در ۱۹۷۸ ML سیستم نوع چند ریخت روی لیسپ ایجاد کرد، و در زبان‌های برنامه نویسی کاربردی ایستا نوع گذاری شده پیشگام شد.

هر یک از این زبان‌ها یک خانواده بزرگ از وارثین از خود به جای گذاشت، و مدرنترین زبان‌ها از تبار حداقل یکی از زبان‌های فوق به شمار می‌آیند.

دهه‌های ۶۰ و ۷۰ مناقشات بسیاری روی برنامه نویسی ساخت یافته به خود دیدند، و اینکه آیا زبان‌های برنامه نویسی باید طوری طراحی شوند که آنها را پشتیبانی کنند.

"ادسگر دیکسترا" در نامه‌ای معروف در ۱۹۶۸ که در ارتباطات ACM منتشر شد، استدلال کرد که دستورgoto باید از تمام زبان‌های سطح بالا حذف شود.

در دهه‌های ۶۰ و ۷۰ توسعهٔ تکنیک‌هایی صورت گرفت که اثر یک برنامه را کاهش می‌داد و در عین حال بهره وری برنامه نویس و کاربر را بهبود بخشید. دسته کارت برای ۴GL اولیه بسیار کوچکتر از برنامهٔ هم سطح بود که با ۳GL deck نوشته شده بود.




یکپارچگی و رشد

دهه ۸۰ سال‌های یکپارچگی نسبی بود. C++ برنامه نویسی شئ گرا و برنامه نویسی سیستمی را ترکیب کرده بود. ایالات متحده ایدا(زبان برنامه نویسی سیستمی که بیشتر برای استفاده توسط پیمان کاران دفاعی بود) را استاندارد سازی کرد. در ژاپن و جاهای دیگر، هزینه‌های گزافی صرف تحقیق در مورد زبان نسل پنجم می‌شد که دارای ساختارهای برنامه نویسی منطقی بود. انجمن زبان کاربردی به سمت استانداردسازی ML و Lisp حرکت کرد. به جای ایجاد مثال‌های جدید، تمام این تلاش‌ها ایده‌هایی که در دهه‌های قبل حلق شده بودند را بهتر کرد.

یک گرایش مهم در طراحی زبان در دهه ۸۰ تمرکز بیشتر روی برنامه نویسی برای سیستم‌های بزرگ از طریق مدول‌ها، و یا واحدهای کدهای سازمانی بزرگ مقیاس بود. مدول-۲، ایدا. و ML همگی سیستم‌های مدولی برجسته‌ای را در دهه ۸۰ توسعه دادند. با وجود اینکه زبان‌های دیگر، مثل PL/i، پشتیبانی بسیار خوبی برای برنامه نویسی مدولی داشتند. سیستم‌های مدولی غالباً با ساختارهای برنامه نویسی عام همراه شده‌اند.

رشد سریع اینترنت در میانه دهه ۹۰ فرصت‌های ایجاد زبان‌های جدید را فراهم کرد. Perl، در اصل یک ابزار نوشتن یونیکس بود که اولین بار در سال ۱۹۸۷ منتشر شد، در وب‌گاه‌های دینامیک متداول شد. جاوا برای برنامه نویسی جنب سروری مورد استفاده قرار گرفت. این توسعه‌ها اساساً نو نبودند، بلکه بیشتر بهینه سازی شده زبان و مثال‌های موجود بودند، و بیشتر بر اساس خانواده زبان برنامه نویسی C بودند. پیشرفت زبان برنامه نویسی همچنان ادامه پیدا می‌کند، هم در تحقیقات و هم در صنعت. جهت‌های فعلی شامل امنیت و وارسی قابلیت اعتماد است، گونه‌های جدید مدولی(mixin، نماینده‌ها، جنبه‌ها) و تجمع پایگاه داده.

۴GLها نمونه‌ای از زبان‌هایی هستند که محدوده استفاده آنها مشخص است، مثل SQL. که به جای اینکه داده‌های اسکالر را برگردانند، مجموعه‌هایی را تغییر داده و بر می‌گردانند که برای اکثر زبان‌ها متعارفند. Perl برای مثال، با "مدرک اینجا" خود می‌تواند چندین برنامه ۴GL را نگه دارد، مانند چند برنامه جاوا سکریبت، در قسمتی از کد پرل خود و برای پشتیبانی از چندین زبان برنامه نویسی با تناسب متغیر در "مدرک اینجا" استفاده کند.




سنجش استفاده از زبان

مشکل است که مشخص کنیم کدام زبان برنامه نویسی بیشتر مورد استفاده‌است، و اینکه کاربرد چه معنی می‌دهد با توجه به زمینه تغییر می‌کند. یک زبان ممکن است زمان بیشتری از برنامه نویس بگیرد، زبان دیگر ممکن است خطوط بیشتری داشته باشد، و دیگری ممکن است زمان بیشتری از پردازنده را مصرف کند. برخی زبان‌ها برای کاربردهای خاص بسیار محبوبند. برای مثال: کوبول همچنان در مراکزداده متحد، غالباً روی کامپیوترهای بزرگ توانا است؛ fortran در مهندسی برنامه‌های کاربردی، C در برنامه‌های تعبیه شده و سیستم‌های عامل؛ و بقیه برنامه‌ها معمولاً برای نوشتن انواع دیگر برنامه‌ها کاربرد دارند. روش‌های مختلفی برای سنجش محبوبیت زبان‌ها، هر یک متناسب یا یک ویژگی محوری متفاوت پیشنهاد شده‌است:

شمارش تعداد تبلیغات شغلی که از آن زبان نام می‌برند.
تعداد کتاب‌های آموزشی و شرح دهندهٔ آن زبان که فروش رفته‌است.
تخمین تعداد خطوطی که در آن زبان نوشته شده اند- که ممکن است زبان‌هایی را که در جستجوها کمتر پیدا می‌شوند دست کم گرفته شوند.
شمارش ارجاع‌های زبان(برای مثال، به اسم زبان) در موتورهای جستجوهای اینترنت.

طبقه بندی‌ها هیچ برنامه غالبی برای دسته بندی زبان‌های برنامه نویسی وجود ندارد. یک زبان مشخص معمولاً یک زبان اجدادی ندارد. زبان‌ها معمولاً با ترکیب المان‌های چند زبان پیشینه بوجود می‌آیند که هربار ایده‌های جدید درگردشند. ایده‌هایی که در یک زبان ایجاد می‌شوند در یک خانواده از زبان‌های مرتبط پخش می‌شوند، و سپس از بین خلاهای بین خانواده‌ها منتقل شده و در خانواده‌های دیگر ظاهر می‌شوند.

این حقیقت که این دسته بندی ممکن است در راستای محورهای مختلف انجام شوند، این وظیفه را پیچیده تر می‌کند؛ برای مثال، جاوا هم یک زبان شیءگرا(چون به برنامه نویسی شیءگرا تشویق می‌کند) و زبان همزمان(چون ساختارهای داخلی برای اجرای چندین جریان موازی دارد) است. پایتون یک زبان اسکریپتی شیءگراست.

در نگاه کلی، زبان‌های برنامه نویسی به مثال‌های برنامه نویسی و یک دسته بندی بر اساس محدوده استفاده تقسیم می‌شوند. مثال‌ها شامل برنامه نویسی رویه‌ای، برنامه نویسی شیءگرا، برنامه نویسی کاربردی، وبرنامه نویسی منطقی؛ برخی زبان‌ها ترکیب چند مثالند. یک زبان اسمبلی مثالی از یک مدل مستقیم متضمن معماری ماشین نیست. با توجه به هدف، زبان‌های برنامه نویسی ممکن است همه منظوره باشند، زبان‌های برنامه نویسی سیستمی، زبان‌های اسکریپتی، زبان‌های محدوده مشخص، زبان‌های همزمان/ گسترده(و یا ترکیب اینها). برخی زبان‌های همه منظوره تا حد زیادی برای اهداف آموزشی طراحی شده‌اند.

یک زبان برنامه نویسی ممکن است با فاکتورهای غیر مرتبط به مثال‌های برنامه نویسی دسته بندی شود. برای مثال، غالب زبان‌های برنامه نویسی کلمات کلیدی زبان انگلیسی را استفاده می‌کنند، در حالیکه تعداد کمی این کار را نمی‌کنند. سایر زبان‌ها ممکن است براساس داخلی بودن یا نبودن دسته بندی شوند.
ساعت : 12:54 pm | نویسنده : admin | گرافیکسولوژی | مطلب قبلی
گرافیکسولوژی | next page | next page