کامپیوتر و IT و اینترنتعلوم مهندسی

مفاهیم اولیه و الفبای زبان c++

تعداد اسلایدهای پاورپوینت: 92 اسلاید این فایل، در ۹۲ اسلاید راجع به مفاهیم اولیه و الفبای زبان c++ تنظیم شده است. این فایل شامل موارد زیر است: انواع زبان های برنامه نویسی ویژگیهای زبان C++ ویژگی دستورات در زبان c++ انواع داده ها متغیرها شناسه ها ثابتها و لیترالها انواع لیترالها(عددی اعشاری و…..) کدهای اسکی کاراکترهای کنترلی عملگرها انواع عملگرها(انتساب ، محاسباتی و ….) ورود و خروج اطلاعات در C++

ناهید

صفحه 1:
برنامه نویسی مقدماتی مفاهیم اولیه و الفبای زبان )++ مدرس : ناهید پورسلیمان ‎Ghpoursoleiman@‏ 6

صفحه 2:
7 انواع زبانهای برنامه نویسی زبانهای برنامه سازی به چهار دسته کلی تقسیم می‌گردند : :amachine language),,.2b 4b -) زبان مستقیما با صفر و یک نوشته می‌شود و بدون هیچ واسطه‌ای برروی کامپیوتر قابل اجرا | ؟ هر برنامه‌ای که به زبان ماشین نوشته شود. فقط بر روی همان ماشین خاص کار می‌کند. بهمین دلیل بزنامه‌های نوشته شده به زبان ماشين را غير قابل حمل مئنامند. * یادگیری این زبان بسیار مشکل بوده. برنامه‌نوبسی با آن بسیار سخت است و همچنین احتمال بروز خطا نيز در آن زیاد می باشد.

صفحه 3:
MOV AL,ADDRES-2 SUB AL,30H ee ADD AL,BL ‏لمعلل‎ ۱۱۱ HLT

صفحه 4:
انواع زبانهای برنامه نویسی ۲- زبان های سطح پایین ‎:(Low Level Language:LLL‏ ؟ این زبان شکل ساده تر زبان ماشین است. © بدین صورت که برای هر دستورالعمل زبان ماشین؛ یک اسم نمادین انتخاب شده است (ماندد دستور ۸910 بجای کد دودویی دستورالعمل جمع) که بخاطر سپردن و برنامه‌نویسی با آنها برای انسانها ساده تر است. ® اما لین برنامه‌ها برای ماشین قلبل فهم نیست و بلید قبل از اجرا شدن, برنامه توسط مترجمی بنام اسمبلر به زبان ماشین تبدیل شود. * مانند زبان اسمبلی برنامه به زبان ماشین 7-۶ -- برنامه به زبان سطح پایین

صفحه 5:
نمونه برنامه اسمبلی 52 برملم‌عنه مه دهاز sread second initial jload and display msg3 jadd num1 and num2 smoves value into ans sload and display msg3 sreturns control to dos mov dx,offset msg2 mov ah,9 int 21h mov ah, 1h int 21h sub al,30h mov num2,al mov dx,offset msg3 mov ah,9 int 21h mov al, num add al, num2 add al,3¢h mov ans,al mov dx,offset ans mov ah,9 int 21h mov ah, 4ch int 21h main endp end main Sample Code model small -stack 100h data msgi db “Enter First Decimal Number : $" msg? ‏دوم‎ ‎num db 2; num? db ?.: ans db ?,"5" -code main proc mov ax,@date jinitiaize ds mov ds,ax nov dx,offset msg1 mov ah,09 int 21h mov ah, 1h sread first initial int 21h sub al,3¢h nov numl,al sload and display msg1

صفحه 6:
انواع زبانهای برنامه نویسی ۳- زبانهای سطح بالاد آ۵:۲11 ودره ‎:(High Level‏ * دستورالعملهای این زبانها بسیار نزدیک به زبان محاوره ای انسانها (بطور مشخص زبان انگلیسی) می‌باشد . * بهمين دليل برنامهنويسى با آنها بسیار ساده تر بوده و می‌توان الگوریتمها رابه راحتی به این زبانها تبدیل کرد. ۴ بیسیک (38510): برای کاربردهای آموزشی ati lls ‏و مهندسی‎ ale cleo uly: Fortran) 53,3 * — ‏برای کاربردهای آموزشی و علمی‎ : (Pascal) Jisul & ‏اذا‎ © * ماجولا ؟ کوبول 6 برنامه به زبان ماشین < — ‎dali yy‏ به زبان سطح بالا

صفحه 7:
برنامه جمع دو عدد در برخی زبانهای سطح ‎WE‏ ‘Spclude etdio.h> | 2 #inctude <conio.f> int rain() 3 4 void mainOt { ‏د‎ ۵: ft und, 2, 505 6 ۰ ‏وا اه ام مامت گام‎ 7 int a,b,c; 9 8 cout<<"number 1 2": ‏اس‎ ‎9 cin os a peinet(enter second nunber: ‏إل‎ ‎10 cout<<"number 2 :"; scont("%e", bum); 11 Cin >> b; 2 © = arb; ۲ 13 coutec"Sum ="; oe 14 cout<<c; printf(‘Sun ofthe entered runbers: 94°, sun): 35 retum a: 16 getchO; | 17 ++ c a = int (input ("Numl-->") ) b = input (input ("Num2-->")) gps, c= atb print (c) 7

صفحه 8:
انواع زبانهای برنامه نویسی (Middle Level Language:MLL), sto caw lil; -F تقیما به حافظه دسترسی داشته باشند وبا مفاهیم * لین زبانها از طرفی مانند زبان اسمبلی قادر هستند که بیت. بایت و حافظه کار کنند و از طرف دیگر برنامه های این زبان ها همچون زبانهای سطح بالا از قابلیت خوانایی بالایی برخوردارند و دستورالعملهای آنها به زبان محاوره ای انسان نزدیک است. * ابد ‎ce‏ © جاوا

صفحه 9:
ویژگیهای زبان ۵++ (چرا ++3) ‎٩ :‏ 6+ ی کزیبا رپس طح م پانیاست ؟ 67+ ی کزبان‌همه منظویم (۳1۲0056 2616781)). بسیار قدوتمند و لنعطافپ نیر لستلیرزبان ی رلی لربرد خاصی‌ساخته و طولحین شدم در لین‌زبان‌هیج یتیب رلیبرنامه نویس‌وجود ندارد و هر آنچه را ه ف نید می‌تولنید با آن‌پیلا ایک نید (در مقابل‌زبان‌های‌خاص‌منظوره مانند - ‎Lisp‏ ‏1 - ۳۳0۵10 و ... که برلیک یبرد و ونم خاصی‌ساخته شده لند * /6++ زبانسرنامه نویسی‌سیستم‌لستبرنامه های‌سیستم برنامه هایی‌هستند که لمکان‌بهره بردارعاز سخفزار و ساير نرم لفزارها را فرلهم میک ‎ohiss (Operating Systembbe pins siils si‏ ‎(Editors )aj.l,, (nterpreter),.i.. (word processoryasls— 255‏ © )++ يبازقابلحملاستيعنىبرنامه هايىكه به زبان)++ در يكفوع كامييوتر (مثل181/1) نوشته شدم ندب دورنجام ت-فییراتی اب النجام 7-فیبراتلندکدر کامپیوترهای‌دیگر منل 1101/87 قاب إستفاهه لند

صفحه 10:
: ویژگیهای زبان 0++ )>15 0++?( ‎++C *‏ ی کزبانشیگپلست * (6++ نسبتسه حروفک وچکو ب زرگحساسلس نت6 56۳5111۷ 0856). یعنی‌در لیرنبانسین‌حروفک وچک و بزرگت فلوتهستو تمام لماتک لیدیدر لین‌زبان(ک لماناز پسیش‌تعریف شده مورد لستفادم خود بانب رنامه ‎Ga‏ با حروفک وچکنوشته مىشوهند مثلا 101316 ب لمه کلیدءلستولی" ,۷۷1111 کلمه کلیدی یستتوصیه می‌شود تسمام برنامه هاین)++ با حروفک وچکن وشته شوند * هر برنلمه /6++ از قطعلتی‌به نام کلاس و تلبع تشکیل عی شود. یک برنامه نویس می تولند خودش کلاس یا تابع بنویسد یا می تواند از توابع و کلاسهای موجود در کامپایلر 62++ استفاده کند. * :6+ زبان‌ک وچکیلستو تسعداد کسلماتک‌لیدودر آرلند کلست‌تعناد ک لماک لیدی‌دلیل‌سر قلرتمند بسومن‌آن * زبازنیستم ثلاتعداد کلماتک لب يسيكبيشتر از )++ لستولىقديتم)++ از بيسيكبيشتر 1[ ‎ ‎ ‎ ‎

صفحه 11:
union unsigned using virtual void volatile reinterpret_ca st false float for frien 4 goto if inlin e try typedef enum extern class const explicit typenam e namespac e new operator dynamic_ca st typeid continu e default delete do double else const_ca st throw static_ca st ده اند.

صفحه 12:
7 ویژگیهای دستورات زبان 70۵+ ؟ دستورالعملهای برنامه به زبان :+ دارای ویژگیهای زیر هستند: * هر دستور زیان 0++ به : (سمی کالن) ختم می شود. * حداکثر طول یک دستور ۲۵۵ کاراکتر است. ® در هر سطر می توان چند دستور را تایپ کرد.(این کار توصیه نمی شود.) مثلا به جای سه دستور داخل کادر فوق می توان نوشت: int sum; float average; long int a,b,c; » Ses int sum; float ۵۱ long int a,

صفحه 13:
ویژگیهای دستورات زبان 40+ © هر دستور می تواند در یک یا چند سطر ادامه داشته باشد. ‎While(a>10) { b=a+5; cout<<b;}‏ ‎While(a>10)‏ 1 b=at5 scout<<b { مثلا می توان دستور فوق را در چند سطر نوشت: ‎Gaby I jl sy sls. (Comments) skis ©‏ ** و */ قرار بگیرند. ‎this is a comment */‏ */ ‎.this is a comment //

صفحه 14:
++C > (DataTypes)ools els! 1۳121- ‏انواع داده اولیه یا ابتدایی يا درون ساخته یا‎ PEF | seit) yg Lag ait Ce as Ss el primitive DataTypes) bj ‏يا موجود در‎ User Defined DataTypes) > ——_char structure) jlcsl. ‏سم‎ int ‏سم‎ (Class) ‏كلاس‎ 1 : 01 سس نع با 2 لع | ‏سس‎ (Enumeration)... ;———. double یونیون (طمنصنآ) با بیس مزهت لم برنامه نوبس. در طول توسعه یک برنامه. با اطلاعات و داده ها از انواع مختلف سرو کار دارد. ‎wehar t‏ string 3

صفحه 15:
در )++ شش نوع داده اصلى وجود دارد كه عبارتند )3 : ‎char, int, float, double, void, bool‏ نوع 0085 برای ذخیره داده های کاراکتری مانند : ۳ ۷۷" , "2" , 27 بکار می رود. از نوع 110 برای ذخیره اعداد صحیح مانند ۰۱۲۸ ۰۵ ۴۵۰۸ استفاده می شود. نوع :1101 براى ذخيره اعداد اعشاری مثل ۰۱۲.۵ ۷۸۰۵.۱۱ بکار می رود. نوع 011016 برای اعداد اعشاری بزرگتر از 11081 استفاده می شود. از 0001 برای ذخیره مقادیر منطقی استفاده می شود ( درستی يا نادرستی ) نوع ۷۵10 (بدون نوع یا 11061655) هیچ مقداری را نمی گیرد و در مبحث تولبع مفصل راجع به آن صحبت خواهد شد.

صفحه 16:
انواع داده‌ها در ++ * نوع دیگری از داده به نام 511170 برای ذخیره رشته ها وجود دارد که در برخی از نسخه های کامپایلر زبان م)جب مانند بورلند پشتیبانی نمی شود. ۴ رشته به دنباله ای از کاراکترها در کنار یکدیگرگفته می شود. © بعنوان مثال "۲65 2 16 015" یک رشته است. ۴ مهمچنین نوع (ا 7عط6) ۲عنامعت0۳ ۲106 که برای ذخیره کاراکترهای با سایز بزرگتر از اسکی (بزرگتر از یک بایت) یعنی یونیکد طراحی شده است و یک نمونه کاربرد آن برای ذخیره کاراکترهای زبان‌های دیگر غیر از انگلیسی هست .

صفحه 17:
ویرایشگرهای انواع داده در ++ ۴ برنامه نییس می تولند بر حسب نیاز و با استفاده از ویرایشگرهای نوع ( 10001865 زیر برخی انواع داده ای اصلی را اصلاح کرده و 11706 های متفاوتی خلق نماید: ۶ 510760 علامت دار ‎unsigned ۶‏ ببوزعلامت * 511071 که حافظه ی کسمترولشفا [هی‌کند * 10196 که حافظه ی بیشتری نسبت به 51001 اشغال می کند. © تمام این اصلاح کننده‌های نوع می‌توانند به نوع داده 111 اعمال شوند و اثر آنها بستگی به محیط دارد. * برروی نوع داده 0107 فقط اصلاح کننده‌های ‎signed‏ و ‎unsigned‏ می‌توان اعمال کرد. برروى نوع داده ©0111 تنها اصلاح کننده ©1011 قابل اعمال است .

صفحه 18:
ee مقدار قابل تخصیص ‎age ats‏ اوع متفیر ‎Char tye 1280 127 or 10 255‏ ‎unsigned char syle 010265‏ ‎‘signed char ‘byte 128 to 127‏ 03 214718368 ‏ما‎ 7183617 unsigned in Ayes 0 o 4794007205 sigpd int typos 2047489648 to 247489647 shert in ۳ 32768 to 32167 signed shor int eves 01065635 ‘signed short int bytes: 32768 to 32767, Fong int Boyles -91223,372,006 854,775,908 lo 9 223:372,096 854,775,807

صفحه 19:
-9,223,372,036 854,775,808 to 9,223,372,036 854,775,807 (to 18,446,744,073,709,551,615 H-B4e #38 (-7 digits) double bytes #1 1.70 41-308 (15 digs) wehar_t 2or 4 byles ‘wide character لازم‌به ذکر است میزان فضلیی که انواع داده ای قید شده در جدول بالا در حافظه اشغال می کنند. ممکن است بر اساس نوع کامپایلر و سیستم مورد استفاده. کمی متفاوت باشد.

صفحه 20:
sizeof (char) << endl; of int : " << sizeof(int) << endl; < sizeof(short int) << endl " <¢ sizeof(long int) << endl; sizeof(float) << andl; sizeof (double) << endl; > sizeof(uchar_t) << endl; 57 کد تعیین حافظه تخصیص يافته به انواع داده در کامپایلر مور داستفاده شما: include <iostream> using nemespace std; int main() ¢ oF char of short int of long int oF Float of double oF wehart

صفحه 21:
متغییها (عططبس) در 40+ برنامه نویس, در طول توسعه یک برنامه. طبیعتا می بایست انواع اطلاعات و داده ها (از نوع مختلف) را در متغیرهایی از نوع متفاوت ذخیره کند. در این درس برای فهم بهتر یک متغیر را به صورت شماتیک با مستطیل نمایش می دهم. متغیر محلی است از حافظه برای ذخیره سازی داده ها. در واقع متغیرها خلنه هلیی از حافظه ]۷[ کامپیوتر هستند که داده ها را در خود ذخیره می کنند. محتویات متفیرها در طول اجرای برنامه تغییر می کند.به همین علت به آنها متغیر گفته می شود. سيستم عامل بر اساس نوع داده متغير. حافظه تخصیص داده و تصمیم می گیرد که چه مقداری قابلیت ذخیره در آن میزان فضای درنظر گرفته شده را دارد.

صفحه 22:
* برای مراجعه و دستیابی به متغیرها از نامشان استفاده می شود. در ولقع نام متغیر امکان نامگذاری مکانهای حافظه ۲ ۸ را فراهم می کند. © قواعد نامگذاری متغیرها از قواعد حاکم بر انتخاب شناسه ها تبعیت می کند.

صفحه 23:
شناسه‌ها در ++ ‎Cool oti identifier) ais ©‏ که به یک قسمت از برنامه مانند متفیر تابع» ثابت و یا ... داده می‌شود. ‏* در زبان ++ن) برای انتخاب شناسه‌ها از ترکیبی از حروف انگلیسی کوچک و بزرگ (8...2 ...۵ ارقام (۰۰..) و ‏علامت خط پایین يا _ استفاده می شود ‎ay‏ شرط انکه اولین کاراکتر رقم نباشد. ‎ ‎2name sum student average Ave56_range High-there name23 pe. student_average ‎Grade&1 abc_ if If ‎

صفحه 24:
* در )+ قبل از بکارگیری و استفاده از متغیرها باید آنها را اعلان کرد. * اعلان متغير يعنى تعريف متغير يا به عبارتی تعیین نوع متغير * نوع متغیر سه مطلب را در مورد آن متغیر مشخص مى كند:١-‏ مقاديرى كه متغير مى تواند بيذيرد 7- ميزان حافظه اى كه متغير در حافظه اشغال می کند.۳- اعمالی که بر روی متغیر قابل انجام است. * برای اعلان متغیرها به شکل زير عمل می‌کنیم: ز<نوع دادم متغیر> <نام متغیر> long int sum; avetage 1 ‏باشد.‎ ١ ‏يا‎ ٠ ‏بيت كوجكترين واحد حافظه است كه داراى مقدار‎ float average; ‏هریت معادل ۸ نیت انتته.‎ 5 ‏جه‎ ‎byt bits 1 bytes

صفحه 25:
(Variable Declaration)& pi» «el " * رای |علان چند متغیر در يك دستور بايد متغيرها را با علامت کاما از هم جدا کرد. long int a,b; a b i 0 1 unsigned long int i, j,k; ‏جسه جه چاه مهم‎ bool av; bytes, bytes bytes, bytesa bytes a hl char ch1; =. ‏ف‎ جسه ‏ مه ‎byte \ byte \‏ * تعریف متغیرها طبق اصول زبان 7)++ می تواند درهرجایی از برنامه صورت پذیرد. و متغیرهای تعریف شده از همان خط به بعد قلبل استفاده خواهند بود. اما معمولا توصیه می‌گردد که تعریف متفیرها در همان خط ابتدلیی تابع و بلافاصله پس از [ صورت پذیرد.

صفحه 26:
مقداردهی به متغیرها * مقداردهی به متغیرها به سه روش قابل انجام است: ۱- مقداردهی به متغیر هنگام اعلان متغیر در خط تعربفلبه این حالت مقداردهی اولیه یا 101111210 هم كفته مى شود.) 0 0 020 غصار ا ‎x‏ جه jint x,y=4 bytes e ‏جح‎ = ychar ch1=‘a’,ch2=‘m bytes+ bytes r ch1 ch2 a w مه متسه ‎byte, byte)‏

صفحه 27:
مقداردهی به متغیرها ۲- مقداردهی به متغیر بعد از اعلان متغیر و با دستور انتساب jint xym ۲ ch 001 1,2 x fal sfloat £112 0 5 = ichar chi,ch2 “GY 0 ِ 9 سود لك 5 ‎ac.‏ مم هه 4 3£2=20.25 ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎x=y=m=0;// multiple assignment 2 1 ‎ ‎ ‎ine ef‏ 02ح لطع ‎;b1=false‏ ‎ ‎ ‎5 ‎4 ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎

صفحه 28:
۶ مقداردهی به متغیرها ۳- مقداردهی به متغیر توسط کاربر وبا استفاده از دستورات ورودی مانند 010 (که مقدار متغیر را از طریق صفحه کلید دریافت می کند) 1 0 اط1: ;cin>>d صفحه سیاه خروجی

صفحه 29:
* ثلبت فضلیی از حافظه است ک یک مقدار ثلبت یا لیترال در آن قرار می گیرد و در طول اجرای برنامه نمی توان مقدار آن را تغيير داد. ؟ به مقادیر ثابت لیترال نیز مى گویند. ® ابت ها می توانند از هر نوع داده اولیه ای (مانند ثابت عددی, ثابت رشته, ثابت کاراکتر و غیره)؛ باشند. * عملکرد ثولبت درست مانند متفیرهای عادی می باشد با لین تفاوت که مقدارتولیت بعد از تعریف شدن قلبل

صفحه 30:
لیترال های عددی ‎(teyer Licrus)‏ * براى نمايش لين دسته از ثولبتء از دنباله‌ای از ارقام بعلاوه علامت + یا - استفاده می‌کنیم. بعنوان مثال ۴۵- و یا ۹ توابت صحیح هستند. )+ به شم لجاه میههد درصورتل زوم ثولبتصحیح خود را بالستفاده از یکپيشوند در مبنای۸ یا ۶ نیز که از مبناهایم تداول‌در برنامه‌ن ویسی‌هستنده تعریفف مایید * برای نوشتن عدد در مبنای ۸ ([0012) یاید آن را با ۰ آغاز کنید. مثلا ۰۳۴۲ یک عدد در مبنای ۸ محسوب می گردد. * برای نوشتن یک عدد در مبنای 62680601۳061۱۶ بايد آن را با 0 آغاز نمایید. مانند ‎Ox27A4‏ ~WMecimal,. ‏مل‎ . sel ‏ار‎ 11

صفحه 31:
(Ploutcerpotat Lierus) 5 biel ole JI id برای نمایش اعداد اعشاری, باید از نقطه اعشار استفاده کنیم. مانند ۲۳۷۰۴۵ © اما نكته جللب آنست كه مىتوانيد از نماد علمى نيز براى نمليش اعداد اعشارى استفاده كنيد. براى اينكار كافى است از حرف 6 برای نملیش قسمت توان استفاده نمایید و ممیز را بعد از اولین رقم معتادار قرار دهيد: بعتوان مثال : نماد علمی ‎23.47e5 59 -2.347 «۷ 106 < -2.34766-- ٩۱۰۰ ۲۳.۴۷-‏ 4. 2389 <* 10 2<24.23896-2 -" ۰۹ نما ‎42.389e-3 <4‏ دقت کنید که قسمت توان. حتما یک عدد صحیح است. ‎Legal‏ // ۰ 3.14159 نت ‎314159E-5 // Legal‏ ‎lcs i sles cliel clo lJ wen ۴‏ ناد ‎510E —_// Illegal: incomplete exponent.‏ ۴ نمونه لیترال های اعشاری مجز د ید مجذ دد ‎Megal: missing integer or fraction’?‏ // 55

صفحه 32:
لیترال های بولی ((عهابا موامت) * در زبان برنامه نویسی /6:+ دو نوع لیترال بولی وجود دارد که جزء کلمات کلیدی زبان ۴ 7116 نشان دهنده درست بودن ‎٩‏ 8156 نشان دهنده نادرست بودن © در 2++ ارزش نادرستی معادل ثلبت 8156] بوده و به مقدار صفر تبدیل می شود. در حللی که ارزش درستی معادل ثابت ۲7116 بوده و به مقدار یک تبدیل می شود. از سوی دیگر هر مقدار غیر صفر معادل ثابت 7116 و مقدار صفر معادل ثابت ۵156 ۱

صفحه 33:
* _برای نشان دادن ثوابت کاراکتری آنها را در داخل " (علامت نقل قول تکی یا سینگل کوتیشن ) قرار می‌دهيم. بعنوان مثال 7۵ یک ثابت کاراکتری است که در نوع داده 0۳ ذخیره می شود. ‎;'char ch ='A‏ نجا که کامپیوترها با سیستم باینری کار می‌کنند لذا در واقع کد اسکی کاراکتر در متغیر ذخیره می‌گردد. بنابراین می‌توان از آن کاراکتر بعنوان یک عدد صحیح نیز استفاده کرد و اعمال ریاضی بر روی آن انجام داد. * نکته مهم دیگر آنست که به تفاوت عدد ۵ و کاراکتر "۵" دقت داشته باشید. در حقیقت "۵" برابر است با عدد ۳ که همان کد اسکی آن است.

صفحه 34:
ASCII (American Standard Code for Information .S ‏كد‎ ‎Interchange) * کدهای اسکی برای نمایش متون در کامپیوترهاه وسایل ارتباطی و هر وسیله دیگری که با متن سروکار دارد. استفاده می‌شوند. * کد اسکی بر اساس الفبای انگلیسی است. * تمام مجموعه کاراکترهای نسل جدید (مانند یونیکد و 1۳ ]) از اسکی نشات می‌گيرند. * جدول کاملی از کدهای اسکی به همراه نماد کاراکتری آن ها را در دو اسلاید بعد مشاهده می کنید. ۶ ۳۲ کاراکتر اول جدول اسکی برای کاراکترهای کنترلی استفاده می‌شوند که غیر قابل چاپ می‌باشند. اين کاراکترها عموما کاراکترهلیی هستند که روی ظاهر متون تاثیر دارند(برای مثال کاربر می‌تولند یک خط را نقطه چین ... کند یا یک کاراکتر را حذف نماید ) یا برای ارسال یک دستور به دستگاه‌های دیگر نظیر پرینتر مورد استفاده قرار می‌گیرند ( مثلا کاراکتری که در دستگاهی مثل «تله تایپ مدل ۳۳» زنگ را به صدا درمی آورد.) 34 ۶ ۹۵ کارکتر اسکی قابل چاپ هستند که آنها را در اسلاید بعد می‌بینيد.

صفحه 35:
11 95 94 78 62 10 9 7 6 109 2 76 108 9 275 10 74 106 105 89 a 103 104 72 37 7 102 70 101 85 99 100 2 67 5 98 a a2 96 97 65 ry (space) امعم جدول اسکی برای کاراکترهای قابل جاب asc Symbol ASCH symbol asc || Symbol

صفحه 36:
3 7 0 1 Ww 1 4 32 3 ۳ sw EB own sue bse ss 98 جدول اسکی برای کاراکترهای غیر قابل چاپ علا كمه طبور بیان لک ال يليان رعق ‎ihe‏ ‏خروع ‏جعت دقيل جدانده رو ‎desig‏ ‏جداكتدة واحد باك كردن ® 3 " ww FF cr م 5 DLE pe. ber ber bor Nak قاصله عمودى صفحه جدید بازگشت محموله برون ود داخل كردق خروج از دده ها کنتل ۱ دستگاه کترل ۷ دستگاه کترل ۳ ‎Sau‏ ‏كتترل 6 دستكاه تیید نشده as كراكتر ار 30 ‎sk‏ ‎ene‏ ‎cor‏ eva 8 0 ire ‏شروع‎ شروع متن بایان مت يليان ارسال اتاييد شد

صفحه 37:
7 للیترال های کاراکتری در 0++ بر خلاف برخی کاراکترها که قلبل چاپ هستند. بعضی کاراکترها مانند 61116۲ قلبل نمایش نبوده و برای آنها شکل خاصی وجود ندارد. در چنین مواردی و برای نمایش لین قبیل ‎OASIS‏ زبان /6:+ از ترکیب علامت ۱ به همراه یک کاراکتر دیگر. استفاده می‌نماید و نام کاراکتر کنتولی را بر آنها می گذارد. بعنوان مثال. کاراکتر 10۱" نشان دهنده خط جدید یا همان 61:61 و ]۱ نشاندهنده فاصله از نوع 1:۵1 (۸کاراکتر) می‌باشد. بنابراین یک لیترال کاراکتری می تولند یک کاراکتر ساده مانند ‎٩٩"‏ یک کاراکتر کنترلی مانند "۱" یا یک کاراکتر جهانی مانند " 1102:6200 باشد. از در جدول صفحه بعد برخی از کاراکترهای کنترلی در زبان ++/6 را مشاهده می کنید.

صفحه 38:
38 نام کاراکتر صدای بوق کامپیوتر حرکت به عقب ‎backspace‏ form feed ‏شروع صفحه‎ line feed ‏سطر جدید‎ carriage return law slau! a, cus» horizontal tab ‏فاصله افقی‎ فاصله عمودی ۵0] ‎vertical‏ علامت سوال © ‏نحوه تمايش در‎ a\ b\ A n\ ۳ t\ ‏ل‎ ‎a ‎1 ‎1 ‎۱ ‎0 كد اسكى 12 10 13 11 63 39 34 92

صفحه 39:
ليترال هاى رشته اى (طاسهابا بسبع) * ليترال هاى رشته اى دنبالهاى از كاراكترها هستند كه بين علامت نقل قول دوتايى (") يا دابل كوتيشن قرار مى كيرند. © بغنوان مثال "2.5651 15 5قط]" يك ‎wl and,‏ © دقت كنيد كه '3' يك كاراكتر استء اما "2" يك رشته است که فقط شامل يك كاراكتر مىباشد. * يك رشته مانند ليترال هاى كاراكترىء مى تولند حاوى كاراكترهاى ساده ‎sails‏ 26 "۰ کاراکترهای کنترلی مانند " ۳۱ و یا کاراکترهای جهانی مانند " 1102620۱ " باشد.

صفحه 40:
(covert) ‏يك ثابت‎ is ۴ ثابتها مقادیر ثابتی هستند که مقدار آنها در حين اجراى برنامه تغيير نمی‌یابد. ؟ ابتها می‌توانند از هریک از انواع داده اصلی باشند. * در زبان ‎Cor‏ دو روش برای اعلان ثوابت وجود دارد: * استفاده از دستور پیش پردازنده 0606# ؟ استفاده ازدستور 6015

صفحه 41:
#06806 ‏مقدار ثابت> <نام ثابت>>‎ #define M 100 #define PI 3.14 * معمولا برای تفکیک ثابت از متغیرهای برنامه. نام ثابت با حروف بزرگ نوشته می شود. * در این دستور نوع ثابت مشخص نشده است. لذا مقداری که برای ثابت تعیین می شود نوع ثابت را مشخص می © 061۳06 ی کدستور پیشپردازنده لستکه باعاهت#لغاز شده و به نیز ختم‌نمی‌شود. لنا قبل‌ترجمه نامه توسط کامپایان لینبرنامه به پیشپردازنده دادم می‌شود و پیشپردازنده تغیبرلتی‌در برنامه لیجاد می‌کند بسه لین 4 پیش‌پردازنده در کلب رنامه مقدار ثابتوا به جاینام ثابنتقرار لنا دستور 06 در نمارلجرا مجود ن خواهد دلشت

صفحه 42:
۰ 50007 بضورت زیر؛ 60251 > ‏<نوع ثابت <مقار ثاب>‎ <ul, a const short int x=50; ge | — = 8 es byte \ es const char y=‘a’; const int n=100,int m=50; ‏؟ اگر بعد از اعلان ثولبت در ادامه برنامه سعی کنید مقدار آنها را عوض کنید کامپایلر به شما اعلان خطا خواهد کرد. لذا‎ دستورات زير در ادامه برنامه فوق با خطا مواجه خواهند شده

صفحه 43:
مزیت استفاده از ثابت در برنامه * چنانچه بخواهید در هر بار اجرای برنامه مقدار ثابت را عوض کنید لازم نیست کلیه دستورات برنامه که با ثابت سرو کار دارند را تغییر دهید .کافیست مقدار ثابت را در دستور اعلان ثابت تغییر دهید.

صفحه 44:
(Operctors) le ‏عملگر‎ ۴ عملگر(0[0612101). نمادی است که عملیات محاسباتی یا منطقی خاصی را بر روی یک یا چند عملوند. انجام می دهد. سور * عملوند ها (0۳612۳01)» متغیرها یا ثوابتی هستند که عملگرها بر روی انها عمل می کنند. 5 +۸۵ ‎J‏ ‏۴ هر ترکیب درستی از عملگرها و عملوندها(متغیرها و وابت) را یک عبارت(۳:۳016510۳) می‌نامیم. * مثلا 4+۲/5 2+7 و 10+4:۲۶۶ همگی عبارات محاسباتی اند. عملگر

صفحه 45:
less || (Operators) يمسو عملگرهای یکانی ۲ عملكرهاى دودويى ۱ Binary) ۱ Unary) | ١ (Operators ~__ (Operators * به عملگرهاپی که فقط پک عملوند دارند. عملگر بکالی می‌گوپپم (مانند عدد -125), * عملگرهایی که برروی دو عملوند اثر می‌کنند را عملگر دودیپی نامیده و عملگر را بين دو عملوند قرار می‌دهیم (مانند 86+23).

صفحه 46:
دس ]| عملگرهای محاسباتی عملگرهای رابطه لی Assignm) ent (Operator Bitwise) Logical) Relational) Arithmetic) (Operators (Operators (Operators (Operators عملگرهای ترکیبی

صفحه 47:
(Assignment Operator)! ‏عملكر‎ * عملگر انتساب. عملگر - است که در بسیاری از زبانها استفاده می‌شود. بعنوان مثال : a=5; b=c+2*d; * این عملگر باعث می‌شود که عبارت سمت راست در عبارت سمت چپ قرار گیرد. * توجه كنيد كه مقدار سمت جب بايد عبارتى باشد كه بتوان به آن یک مقدار را نسبت داد (مانند یک متفیر», بنابراین یک ابت نمی‌تواند در سمت جب قرار كيرد.

صفحه 48:
(Assignment Operator)! ‏عملكر‎ * اولویت عملگر - از عملگرهای ریاضی کمتر است و درنتیجه ابتدا آن عملیات انجام شده و در پایان حاصل در عبارت سمت چپ ریخته می‌شود. * شرکت پذیری این عملگر از راست به چپ می‌باشد. بدین معنا که چنانچه چندین عملگر نسبت دهی داشته باشیم» لين عملگرها از راست به چپ محاسبه می‌شوند. مثلا پس از اجرای دستور زیر مقدار هر ۳ متغفیر برابر ۱۰ خواهد شد. 52 ام ‎Ul‏ ‏5 ‎i]‏ ‎a‏ ‎i]‏ ‏۳ ‏2

صفحه 49:
تبدیل نوع در احکام انتساب در هنكام انتساب نوع عبارت سمت چپ و راست باید یکسان باشد. *_زمانی که دو متغیر از انواع مختلف به یکدیگر نسبت داده شوند( مثلا متغیری از نوع 08 به متغیری از نوع 10 نسبت داده شود) در برخی زبانهابه صورت ضمنی نوع عبارت سمت راست به نوع عبارت سمت چپ تبدیل می‌شود و در برخی زبانها بايد به صورت صريح این تبدیل نوع را انجام داد . * _شکل کلی تبدیل نوع صریح به شکل زیر است : ‎(<type>) <expression>‏ که ‎type‏ نوع مورد نظر است که قصد تبدیل عبارت 626۳016551010 به آن نوع را داریم. * در تبدیل نوع ممکن است بخشی از اطلاعات از بي وه برود.

صفحه 50:
تبدیل نوع در احکام انتساب int a; a=2.5*5.0; //implicit type casting int x = 10; float ym=3.14; y= (float) x; //explicit type casting x= (int) m; //explicit type casting در دستور دوم عدد ۱۲ در 8 ذخیره خواهد. شد.(بخشی از اطلاعات از بين رفته است!) در دستورپنجم .کلمه 710817 که قبل از 6 در داخل پرانتز قرار گرفته است.موجب می شود مقدار * از نوع تأط1 به نوع 08 تبدیل گردد.در دستور ششم کلمه 110 که قبل از 10 در داخل پرانتز قرار گرفته است موجب میشود که مقدار 0از نوع 108 به نوع صحیح تبدیل شود و حاصل آن در 6 قرار گیرد.

صفحه 51:
MSB LSB در تبديل دو نوع با سايز برابر اطلاعات از بين نمی رود ‎nee‏ اس[ ‎Co) ‎a‏ در تبدیل نوع بزرگتر به کوچکترممکن است بیت های بارزش تر از بین برود

صفحه 52:
: عملگرهای محاسباتی اين ‎Lr Shee‏ همان اعمال متداول ریاضی هستند که در زبان 6++ مورد استفاده قرار می‌گیرند و اعمال محاسباتی را بر روی عملوندها انجام می دهند. این اعمال عبارتند از : عملكر فوع یکانی دودویی دودویی دودویی دودویی دودویی عمل منفى كردن عملوند سمت راست(منهای یکانی) جمع دو عملوند تفریق دو عملوند ضرب دو عملوند تقسیم دو عملوند محاسبه باقیمانده تقسیم دو عملوند کاهش افزایش

صفحه 53:
عملگرهای محاسباتی ‎Gla Slee cul ©‏ برروی همه انواع داده‌های 62++ عمل می‌کنند. بچز عملگر ۸ که فقط برروی نوع داده‌های صحیح عمل:میکنن: ‏؟ نحوه کار عملگر تقسیم برروی نوع داده‌های مختلف به صور ‎ ‏۴ درصورتیکه هردو عملوند صحیح باشند. تقسیم بصورت صحیح بر صحیح انجام خواهد شد. ‏* اگر یکی یا هر دو عملوند اعشاری باشند. تقسیم بصورت اعشاری انجام خواهد پذیرفت.

صفحه 54:
‎ :‏ عملگرهای محاسباتی ‏* فرض كنيد تعاریف زیر را داریم : ‎;int a,b ; float c,d ‏اکنون به نتایج عملیات زیر دقت کنید : ‎ ‎enya gla ele ©‏ كنيد متوجه مئشويد كد أزااتجاقد 8 يك ‎Shee eee es‏ ثلبت صحیح در نظر گرفته شده. درنتیجه تقسیم بصورت صحیح بر صحیح انجام گرفته است. چنانچه بخواهیم ‏تقسیم بصورت اعشاری صورت پذیرد. به دو شکل می‌توانیم عمل کنیم: ‎54

صفحه 55:
عملگرهای محاسباتی اين عبارت را بصورت 4.0 / ۵ بنویسیم. ١ ‏از‎ تبديل نوع صريح (025111267) ©1570 18011011) استفاده كنيم كه در اينصورت يك نوع به نوع ديكرى تبديل مى شود. * بعنوان مثال در مورد قبلى مىتوان به شكل زير عمل كرد : ‎(float) a/ 4‏ ؟ در این حالت از کامپایلر خواسته ایم که ابتدا عدد 2 را به اعشاری تبدیل کند (البته بصورت موقت) و سپس آن را بر ۴ تقسیم نماید. که مسلما حاصل اعشاری خواهد بود.

صفحه 56:
تبدیل انواع در عبارات محاسباتی(تبدیل نوع ضمنی) * در )+ انواع مختلف داده ها می توانند به یکدیگر تبدیل شوند. * در مورد تبديل انواع در عبارات محاسباتى اين قانون حاكم است كه انواع كوجكتر به انواع بزركتر تبديل مى شوند. inti ‏تیه سا‎ 8 ۳ ‏بعنوان مثال‎ double d; result=(ch/i) + ۴*۵۱ - (f+i) b oo be | ‘| ‏نك‎ Be ‏يلم‎ ‎int double float, ‏نب‎ ‎0 | double

صفحه 57:
* عملگر کاهش (--) یک واحد از عملوندش کم می کند و نتيجه را در آن عملوند قرار می دهد. عملگر های افز ایش (72) و کاهش(72*20»)) * عملگر افزايش (++) یک واحد به عملوندش اضافه می کند و نتیجه را در آن عملوند قرار می دهد. * این دو عملگر می توانند سمت چپ و یا سمت راست عملوند خود قرار بگیرند. m 48 x 0 int x=10,m=10; xt++4+; ++m; ؟ همانطور که در دستور دوم و سوم مشاهده می کنید عملگر افزلیش و کاهش چه قبل عملوند باشند چه بعد از آن» "عملکردشان یکسان است. اما عملکرد آنها در عبارات محاسباتی با هم متفاوت است.

صفحه 58:
(Decrewedt) pO 9 (creweut) 11551 ola Shes) 7 دستور 3 ++ )پس افزلیش( بدین معناست که ابتدا از مقدار فعلی 2 در عبارت موردنظر استفاده کن و سپس آن را افزلیش بده.اما دستور ++ 12 (پیش افزلیش) بدین معناست که ابتدا 3 را افزلیش داده و از آن در عبارت استفاده كن. لا ‎x‏ ‎int x,y; 0‏ 11 0 ;10= ‎x 12 =‏ ۲ 7 e G

صفحه 59:
۷ m

صفحه 60:
قطعه برنامه زیر را در نظر بگیرید.پس از اجرای دستورات . مقدار نهایی هریک از متفیرها چه خواهد شد؟ ‎x y m‏ ‎int xy,m; ۳‏ x=10; 10 OO

صفحه 61:
قطعه برنامه زیر را در نظر بگیربدپس از اجرای دستورات به صورت پشت سر هم . مقدار نهایی هریک از متغیرها چه خواهد شد؟ int x,y,m; x=10; y=15; M=x- +++y; m=++x + ++y;

صفحه 62:
تقدم عملگر های محاسباتی * تقدم عملكرها : به اين معنا كه در عبارتى كه شامل چندین عملگر است. ترتیب اجرای عملگرها چگونه خواهد بود. * تقدم عملگرهای محاسباتی از بالا به پایین بشرح زیر ! * عملكرها با تقدم یکسان نسبت به هم تقدم مکانی دارند .این عملگرها از چپ به راست محاسبه خواهند شد. * چنانچه بخواهیم یک عمل با تقدم پایین زودتر انجام شود. باید از پرانتز استفاده کنیم. بنابراین تقدم عملگر پرانتز از همه موارد فوق بیشتراست. در مورد پرانتزهای متداخل. ابتدا پرانتز داخلی محاسبه می‌شود؛ اما در مورد برانتزهاى هم سطح. ابتدا 62 انترسمث ‎Jigen‏ محاسيه م كردد:

صفحه 63:
تقدم عملگرهای محاسباتی * چند متال در مورد اولویت عملگرها ترتیب اجرای عملگرها عبارت زبان )+ ابتدا عمل * و سيس عمل + 0 + ظ إبتدا عمل + و سيس عمل © * 0 + ط) ‎Jee al‏ اسپس ‎b+c/d*e + ee ale g @ Jae‏ ‎al‏ عبل ه سچن عمل و درآنتها عمل > ‎b+c/(d*e)‏

صفحه 64:
2 اتقدم عملکرهای محاسباتی * یک مثال کامل در مورد اولویت عملگرها (fF ‏و‎ + b)/d) we 3

صفحه 65:
* از ترکیب عملگر انتساب وعملگرهای محاسباتی ایجاد می شوند. © باعث می‌شوند در بعضی موارد بتوانیم عبارات کوتاهتری را بنویسیم. © تقدم این عملگرها پایین تر از سایر عملگرهاست. : ‏این عملگرها عبارتند از‎ © ‏عبارت انتساب معادل متال‎ a+=5; a=at+5; a-= 8; a=a-8; a*= 10; a=a* 10; a/=2; a=a/2; a %= 10; a=a%10;

صفحه 66:
عملگرهای رابطه ای اد ۳ این عملگرها ارتباط بین عملوندها را مشخص می کنند. ‎false) be | true) cu,>‏ باشد. ‏* اين عملكرها عبا ‎ ‎ ‎ ‏مفهوم عملكر بزركتر (<) کوچکتر (>) بزرگتر یا مساوی (2) کوچکتر یا ساوی (5) مساوی (2) نامساوی (2۶) ‎ ‎e ‏در واقع عملگرهای رابطه ای, دو عبارت رابا یکدیگر مقایسه کرده و نتیجه را باز می‌گردانند. نتیجه می‌تواند‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎

صفحه 67:
عملگرهای رابطه ای ۴ یک اشتباه بسیار متداول برنامه‌نویسان 2)++ استفاده اشتباه از عملگر انتساب (-) بجای عملگر تساوی (--) است که باعث ایجاد خطا در برنامه می‌شود. ؟ اولویت این عملگرها از بالا به پایین بشرح زیر ! * لازم بذکر است که در هنگام مساوی بودن اولویت چند عملگر, این عملگرها از چپ به راست محاسبه می‌گردند.

صفحه 68:
ریم * عملگرهای منطقی بر روی عبارات منطقی عمل می کنند. عبارات منطقی دارای دو ارزش درستی و نادرستی sl * لین عملگرها به شما اجازه می‌دهند که شرطهای ساده‌ای را که با استفاده از عملگرهای مقایسه‌ای ایجاد شده‌اند با یکدیگر ترکیب نموده و شرطهای پیچیده تری را بسازید. این عملگرها عبارتند از : مثال a>0 && sw== a<=100 || b!=0 @==1 || b<10)! نحوه کار اگر هر دو عملوند درست باشند, درست و در غير اینصورت نادرست باز می‌گردان. 9 هر دو عملوند نادرست باشند, نادرست اینصورت درست یاز می‌گرداند. اگر عملوند درست باشد. نادرست و اگر نادرست باشد. درست برمی گرداد. مفهوم عملگر (a. AND G) 5 منطقی را منطقی ‎Gi)‏ عملگر &&

صفحه 69:
7777 bd false false | false} false true | false true false | true | false false) (pre true false |false| true true true true | True

صفحه 70:
تقدم عملگرهای رابطه ای منطقی از بالا به پایین بصورت مقابل است: مثال: x N 3 ;bool x=true,z=false,m M=x||!x&&z

صفحه 71:
عملکرهای بینی از عملکرهای بیتی برای دستکاری بیت ها استفاده می شود . عملگرهای بیتی به عملگرهایی گفته می‌شود که عملی را روی یک یا چند عدد باینری در سطح بیت هایشان انجام می‌دهند. به این اعمال. عملیات بیتی (0067۵110 33117196 می گویند و از آنجایی که بسیار ساده هستند توسط پردازنده به صورت مستقیم نیز پشتیبانی می‌شوند. عملیات بیتی معمولا برای انجام اعمالی نظیر مقایسه. محاسبه و ۰.. مورد استفاده قرار می‌گیرد. وجود عملگرهای بیتی باعث شد تا بسیاری از کارهای زبان اسمبلی در 62+ انجام شود. مثلا خواندن بایتهای وضعیت دستگاههایی مثل چاپگر و مودم و تست وضعیت آنها از جمله موارد کاربرد عملگرهای بیتی است. عملگرهای بیتی بر روی متفیرهای از نوع 0108۳ یا ت10 عمل می کنند و نمی توان آنها را با انواع دیگر به کار

صفحه 72:
عملکرهای بینی * عملگرهای بیتی رایجی که در اغلب زبان های برنامه نویسی (و نه تمامی آن‌ها) پشتیبانی می‌شود عبارتند از : XOR ~ NOT << Right Shift ‏ع‎ Left Shift

صفحه 73:
7 | عملگرهای بیتی * عملگر 0 بیتی. یک عملگر یکلنی است که تمام بیت‌های عملوند خود را تفییر می‌دهد. ) به یک و بیت‌هایی که یک هستند را به صفر تبدیل می‌کند). * عملگرهای ۸۸ و 01 و ۵6013 عملگرهای باینری هستند. عملوندهایی که توسط این عملگرها بر روی آن‌ها عملیات بیتی انجام می‌شود می‌بایست دارای طول (تعداد بیت) یکسان باشند چرا که این اعمال روی بیت‌های متناظر عملوندها یی که صفر هستند را انجام می‌شود. * عملكر ‎AND‏ بيتى. عمل ۸/2 منطقی را روی هر جفت از بیت‌های متناظر در عملوندهایش انجام می‌دهد. * عملگر 01 بیتی عملگری است که عمل 018 منطقی را روی هر جفت از بیت‌های متناظر در عملوندهایش انجام می‌دهد. * «عملگر 01بیتی نیز عمل یای مانعه الجمع (یای انحصاری) منطقی را روی هر جفت از بیت‌های متناظر در

صفحه 74:
1 1 0 0 0 1 1 0 ‎NOT 0110‏ توجه داشته باشید در فرم متدول نمایش باینری. سمت ‎OR‏ 1 < ‏چپ‌ترین موقعیت بیتی رابا ارزش نرين (يا مهمترين) بيت ‎Mey‏ ‎ ‎cow 5 (MSB) &( Most significant bit)‏ ,| ين موقعیت بیتی را کم ارزش ترین (يا کم اهمیت ترین) بیت ‎((LSB L Least significant bit)‏ می‌نامند. 210 001 ‎AND 1001 XOR 1001 ‎= 0001 =1100 ‎

صفحه 75:
روش از نحوه تبدیل عدد دسیمال به باینری وق اوه 2 |18 ‎wading‏ واه 18 ‎ie BLE‏ 22 82" رشع © © 9 69 6699 ‎Daa dee‏ ‎oe‏ ‏© 0 © © 0 © © © - 182010 ‎A = @@11 1100‏ ‎B = 0000 1101‏ فرض کنید 60 < ۸ و 13 < ظ باشد. آنگاه فرمت باینری آن ها به صورت زیر خواهد بود: 525 0 ۵008 - ققم 1 6811 - ۸۱6 1 ۵611 - ۸۰8 ‎A = 1100 ee11‏ ‎ ‎ ‎ ‎

صفحه 76:
عملگرهای شیفت بیتی عملگرهای شیفت بیتی. بیت های عملوند خود را براساس نوع شیفت. به سمت چپ يا راست جابجا می‌کنند. در عملگر > > (شیفت‌به چپ بیتی) بیت های مقدار عملهند رابه تعداد تعیین شده به سمت چپ شیفت داده و از سمت راست بهجاى مقدار هاى شیفت. داذه شنده بیلت۰ قواز مین دهد. : تعداد شيفت >> >> متغير در عملكر << (شيف ,به راست بيقى) بيت هاى مقدار عملوند رابه تعداد تعيين شده به سمت راست شيفت داده واز سمت جب به جاى مقدار هاى شيفت داده شده بيت ‎٠‏ قرار مى دهد. ز تعداد شیفت << متغیر

صفحه 77:
4 8 « | ه وا هام واه 5 3 60 9 re ‏هط‎ ‎rN ‎RS ‏لت‎ ‏ام‎ ‏سا‎ 1 2001 ۹0 و( شيفت حساپی تک بیتی به سمت راست. ملاحظه می کنید که هر شیفت به چپ معادل ضرب کردن عدد در ۲ است. بعد از دستور 6<(6>>2: اطلاعات واقعی از بین می روند و در نتیجه روند ضرب شدن در ۲ در اینجا صدق نمی کند. همینطور هر به راست معادل تقسیم عدد بر ۲ است . ‎MEKSS1‏ ‎X=XS52‏ ع yy

صفحه 78:
نحوه تبدیل عدد باینری به دسیمال مثال ۱: 0 © © 6 086 1821010 © 0 © © 0 ‎OU+H"O+O*F+0*O+000=00‏ ‏مثال ۲: 54=110110 وک یک بش یک ی 324164442 = 54

صفحه 79:
2 نمونه برنامه عملكر بيتى 00000) مثال: بعد از اجرای دستورات بالا توسط کامپایار زبان ++0 خروجی زير بدست خواهد آمد: sincluae <ios using namespace std; و مم عر زوه - 0 - جر ۰ ركه د (* فده فص - 32 «/ ده معا جو int maint) ¢ unsigned int a unsigned int b int © = 0; c= abby cout << “Vetue return ‏زه‎ Value of ¢ is 12

صفحه 80:
9 ذمونه برنامه عملكر شيفت بيتى مثال: cout << “Value of cds: "(ce 44 endl ‏و‎ بعد از اجراى دستورات بالا توسط كاميايلر زيان +64 خروجى زیر بدست خواهد آمد: ude <iostreen 48 Using nanespace std; ‎making) 4‏ عمة ‎ ‎unsigned int a - 60; /* 69 - Ge1t 1100 */ ‎ ‎unsigned Int p= 13; + ‏وموم ع كر‎ 1101 °/ ‎ant ¢ = 8% ‎ ‎c= mik2; 7 240 - 1121 9000 ‎return @5 ‎Value of ¢ fs 240

صفحه 81:
علاوه بر عملگرهای اصلی زبان 62:+ .عملگرهای پر کاربرد دیگری نیز وجود دارند که در این بخش بررسی خواهیم کرد. لا عملگر ]51260 * یک عملگر زمان ترجمه است که می تواند طول یک متغیر یا نوع داده را بر حسب بایت تعیین کند. با این عملگر به راحتی به آن * اگر با کامپیوتری کار می کنید و نمی دانید دیتاتایپ های آن چند بایتی است می توانب پی ببرید. :نام متغير ‎sizeof‏ :(نوعدامه) 5912601 int x,y,m; x=sizeof y; m=sizeof (float);

صفحه 82:
عملگرهای متفر قه در زبان 40+ لا عملگرپرانتز ۵ * اين عملكر تقدم عملگرهای داخل خود را بالا می برد. مقدار نهایی ۰13 7 خواهد بود. y=4*2/(34+1)+(6 + (7-2))

صفحه 83:
هر متغیر علاوه بر نام و مقدار دارای ادرس نیز می باشد. لا عملگر آدرس )&( * اين عملكر. یک عملگر یکانی است.(بر خلاف عملگر 4 بیتی که باینری است.) از این عملگر برای دسترسی به آدرس متفیر استفاده می شود.یعنی اين عملگر آدرس یک متفیر را برمی گرداند. ۴ 56 یعنی ادرس 6 که در مثال فوق ۱۵۰۰ است.

صفحه 84:
لا عملگر ستاره (*) ۴ ۵ از اين عملگر برای دسترسی غیر مستقیم به حافظه استفاده می شود. ‎we‏ ۳ 5060 اشاره > 27# یعنی محتویات جایی که 0 به آن اشاره می کند. ‎os‏ * به متغیری که ادرس متغیر دیگر را در خود نكه مى دارد اشاره كر يا 0201111617 مى كويند. در مثال زیا اشاره گر است به متغیری که ادرس آن را در خود نگهداری می کند. یعنی 0 به 16 اشاره می کند. دمر ادرس متغیر 6 را در متغیر 0 قرار بده. ‎Se‏ 0<5 را در محتویات جایی که 0 به آن اشاره مى كند بريز. 02*0 . محتویاتجایی‌که 0 به آاشاید می‌کند را در 10 بریز

صفحه 85:
لا عملكر علامت سوال يا ‎question mark‏ )@ * این عملگر یک عملگر شرطی ۳تایی (با ۳ عملوند) است. * لین عملگر ابتدا یک شرط را بررسی می کند و سپس برمبنای نتيجه (درستی یا نادرستی آن) نتیجه عبارت دیگر را در یک متغیر قرار می دهد . * شکل کلی این عملگر بصورت زیر است: ‎pis b>;‏ - #شرط> ۶ <عبارت۱> : <عبارت۲ ‎b‏ مقدار عبارت۱ و در غیراینصورت مقدار عبارت ۲ در متفیر قرار می گیرد. ‎ ‏درصورت درست بودن

صفحه 86:
مثال ۲ : که این عبارت معادل دستور زیر است: es int xy; x=5; YHX>5 2 x2 :x*5; a=(k<10) ?100 :50; if (k<10) a=100; else a=50;

صفحه 87:
عملگرهای متفرقه در زبان 40+ *؟ مثال ۳: اين دستور به شکلهای پیچیده نیز می‌تواند مورد استفاده قرار گیرد. مثلا: ‎c+=(a>0 && a<10) ? ++a : a/b;‏ : ‏؟ که معادل است با‎ c=c + ((a>0 && a<10) ? ++a : a/b); : ‏که معادل است با‎ if (a>0 && a<10) c=c+(++ta); else c=c+a/b; 87

صفحه 88:
الاعملكر كاما اين عملكر براى انجام جند عمل در يك دستور به كار مى رود و كاربرد آن بصورت زیر است: تفتفیر <(عبارت > , عبارت ۲ عبارت۱ به نحوی با عبارت ۲ در ارتباط است .ابتدا عبارت۱ ارزیابی می شود و عبارت ۲ می تواند از نتیجه آن استفاده کند. در نهایت حاصل عبارت۲ در متغیر قرار می گیرد. int xy; y=(x=2,x*4/2); 2 ۹

صفحه 89:
9 از چپ به راست از چپ به راست از چپ به راست ‎Sal Apel‏ آزراننت به چپ ۳ از چپ به راست

صفحه 90:
ورودی اطلاعات در ‎++O0‏ ۴ برای دریافت اطلاعات ورودی از کاربر(خواندن اطلاعات از صفحه کلید) از شی ای بنام 0110 استفاده می‌شود که در فايل .105176810 تعریف شده است. ؟ به این منظور باید از عملگر استخراج از جریان پا << بصورت زیر استفاده نماییم. بعنوان مثال: زنام متغیر >> ‎cin‏ * برای دریافت اطلاعات چند متغیر نیز از این ساختار استفاده خواهد شد: بن << نام متغیر۱ >> نام متغیر۲ >> ‎CIN‏

صفحه 91:
خروجی اطلاعات در ++ ۴ برای چاپ اطلاعات در صفحه نمایش خروجی, از شی ای بنام ت00 استفاده می‌شود که در فایل .105768۳0 تعریف شده است. * به این منظور باید از عملگر درج در جریان یا >> بصورت زير استفاده نماییم. بعنوان مثال: زنام متغیر یا عبت> > ]00 برای چاپ چند متغیر یا عبارت نیز از این ساختار استفاده خواهد شد: 7 اع عبت < < عبط >> ]00۱ * براى جاب یک متن یا چاپ عین یک عبارت باید آن را داخل علامت " قرار داد. متن ها می توانند حاوی کاراکترهای دو کنترلی باشند. این کاراکترها شکل خروجی اطلاعات را مشخص می کنند و با علامت ۱ شروع می شوند.

صفحه 92:
اکاراکترهای کنترلی کاری که انجام می شود بوق سیستم را به صدا در می آورد کاراکتر قبل از خودش را حذف می کند سطر جاری را رد می کند برگشت به ابتدای سطر ۲61۲ 7۲296 کنترل خروجی را به ابتدای 8 محل بعدی می برد کنترل خروجی را به ابتدای 8 سطر بعدی می برد علامت ؟ را چاپ می کند علامت " راچاپ می کند علامت " را چاپ می کند علامت ۱ را چاپ می کند علامت : را چاپ می کند کاراکتر کنترلی

جهت مطالعه ادامه متن، فایل را دریافت نمایید.
10,000 تومان