23
1 בבבב בבבבב בבבבב בבבב בבבבב בבבבב בבבבב בבבב

מבוא למדעי המחשב

  • Upload
    thimba

  • View
    70

  • Download
    0

Embed Size (px)

DESCRIPTION

מבוא למדעי המחשב. מושגי יסוד. אלפבית. תווים המותרים בשימוש בתכניות C : אותיות לטיניות קטנות: a,b,c, … ,z אותיות לטיניות גדולות: A,B, C, … ,Z ספרות: 0,1,2, … ,9 רווחים: רווח, tab , enter וכו' סימנים אחרים: - PowerPoint PPT Presentation

Citation preview

Page 1: מבוא למדעי המחשב

1

מבוא למדעי המחשבמבוא למדעי המחשב

מושגי יסוד

Page 2: מבוא למדעי המחשב

2

אלפבית:Cתווים המותרים בשימוש בתכניות

אותיות לטיניות קטנות:a,b,c,…,z

אותיות לטיניות גדולות:A,B, C,…,Z

ספרות:0,1,2,…,9

רווחים: וכו'tab, enter רווח,

סימנים אחרים:•+ , - , * , / , = , ( , ) , [ , ] , { , } , ’ , ” , # , % , & , _ , ! , ? , \ , < , > , ~ , ^ , | , . , …

Page 3: מבוא למדעי המחשב

3

identifiersמזהים Cמזהים הם שמות - המילים שברצוננו לבטא בשפת

מזהים יכולים לכלול אותיות, ספרות ואת הסימן _

מזהים מתחילים באות )או ב- _(

aBC≠abC משמעותי:caseה-

רק אך מוגבל אינו הם 31האורך הראשונים התווים משמעותיים

מוסכמה: אותיות קטנות למשתנים וגדולות לקבועים

שני סוגי מזהים: )של משתנים, פונקציות וכו'(מזהים כלליים: שמות1.

שמורות2. בשפת מילים מיוחדת משמעות בעלות מילים :C מציינות .( …for, whileהוראות ,( טיפוסים סוגי ,)int, double… ניתן , לא וכו'. )

השתמש במילים שמורות כשמות )גורר טעות קומפילציה(.

Page 4: מבוא למדעי המחשב

4

טיפוסי נתוניםשתוכניות האובייקטים הם )תכניות Cנתונים עליהם עובדות

מחשב מעבדות נתונים(.

הנתונים במחשב הם מספרים המיוצגים בספרות בינאריות.bit)(. 1 או 0 )2 – ספרה על בסיס )ביט

ביטים ניתן לייצג ערכים שונים זה מזה.nבאמצעות

byte)אפשרויות(.256 ביטים )8 – )בית

word)בתים )תלוי מחשב(.8 ל- 4 – בין )מילה

יש byteבתאי הזיכרון ניתן לשמור נתונים. התאים רצופים ולכל כתובת משלו.

בהגדרת גמישות למתכנת מאפשרות שונות מחשב שפות הנתונים טיפוסי – ממספרים יותר מורכבים נתונים טיפוסי

הפרימיטיביים ששפת מחשב מגדירה שונים משפה לשפה.

n2

Page 5: מבוא למדעי המחשב

5

C (data types)טיפוסי נתונים בשפת

ייצוג מספרים:

(intשלמים )

(double, floatממשיים )

ייצוג טקסט:

(charתווים )

מחרוזות

Page 6: מבוא למדעי המחשב

6

characters( תווים 1)

תווים 256 סיביות( =< יש 8 אחד בדיוק )= byteמיוצגים במחשב ע"י שונים.

ערך הקובעים תקנים ישנם – מספרים ע"י בזיכרון מיוצגים התווים מספרי לכל תו.

:ASCIIהתקן הנפוץ – תקן

.255 ל- 0מייחס לכל תו מספר בין

לגבי כנ"ל רציפים. מספרים ע"י מיוצגות הקטנות האותיות האותיות הגדולות והספרות.

תקן Cשפת עפ"י מספרי ערך שמירת ע"י בזיכרון תווים מייצגת כלשהוא.

תווים הניתנים להדפסה:

9,a,z,A…,$,

תווים שאינם ניתנים להדפסה:

תו המציין סוף קובץ, התו הריק...

Page 7: מבוא למדעי המחשב

7

Cציון תווים בשפת

ניתן הוא )אם התו של המודפסת -הצורה גרשיים בין ’, ‘*’A’, ‘3‘להדפסה(:

(:8ע"י המספר האוקטלי של התו )בבסיס

, בבסיס ASCII עפ"י טבלת ה- 7 – התו שערכו המספרי ’007‘\אוקטלי.

(:16ע"י המספר ההקסדצימלי של התו )בבסיס

\‘xFF’ כאשר x המספריים הערכים ייצוג הקסדצימלי. מיצג בבסיס הקסדצימלי.ASCIIעפ"י טבלת ה-

לייצג מאפשר והאוקטלי ההקסדצימלי המספר ע"י ייצוג גם תווים שאינם ניתנים להדפסה.

Page 8: מבוא למדעי המחשב

8

- דוגמאCציון תווים בשפת

Aהתו

ASCIIערך מספרי לפי תקן 65

'A'בין גרשיים

ייצוג אוקטלי\'101'

'41x'\ייצוג הקסדצימלי

Page 9: מבוא למדעי המחשב

9

integers( מספרים שלמים 2)

קבוע מספר )לפחות 2≤ תופס בזיכרון בתים של 16 מספרים שונים.65,536סיביות( – לכל הפחות

8 bit7 bitsign

8 bit

– חיובי0

- שלילי1

122 1515 int

Page 10: מבוא למדעי המחשב

10

ציון מספרים שלמים

62בסיס דצימלי

076 0בסיס אוקטלי: מתחיל ב-

0X0X3E או 0xבסיס הקסדצימלי: מתחיל ב-

Page 11: מבוא למדעי המחשב

11

ייצוג מספרים שלמים

intמספר שלם –

: long intמספר שלם ארוך – בתים4תופס לפחות

בסוףL או lציון כמו מספרים שלמים רק בתוספת

short intמספר שלם קצר –

longbit 32

longshortbit int16

Page 12: מבוא למדעי המחשב

12

מה בין ייצוג מספרים שלמים לייצוג תווים?

טיפוס למעשה הוא תווים של הנתונים טיפוס צר הפנימי שייצוגו שלם, מספר של הנתונים

במיוחד )רק בית אחד(.

שימו :

על גם מותרות שלמים על המותרות הפעולות כל , למשל: אופרטורים אריתמטיים.תווים

Page 13: מבוא למדעי המחשב

13

float, double( מספרים ממשיים 3)

ייצוג בשיטת הנקודה הצפה:

4101253412.0

412.1253

סימן )מספיקה סיבית אחת(בסיס מעריך

Page 14: מבוא למדעי המחשב

14

float, doubleמספרים ממשיים

ב- Cשפת תומכת ממשיים 3 למספרים נתונים טיפוסי )בהתאם לתחום ולדיוק הדרושים(:

•double – לפחות של דיוק הנקודה 10 אחרי ספרות העשרונית ותחום מספרים של עד .

•float – ספרות אחרי הנקודה העשרונית 5 דיוק של לפחות .ותחום מספרים של עד

•long double – דיוק של לפחות כמו double.ואולי יותר

מתחייבת אינה והשפה מימוש תלויי הם המדויקים הממדים לגביהם.

3710

3710

Page 15: מבוא למדעי המחשב

15

Cציון מספרים ממשיים בשפת

בנקודה מופרדים שבור, וחלק שלם חלק יכלול ממשי מספר עשרונית.

ולאחריה המעריך, עם או בלי E או eלאחר החלק השבור תבוא האות סימן.

האותיות לבוא יכולות המעריך לציון F,fבסוף float או L,l לציון double.

לא אך מושמטים, להיות יכולים השבור החלק או השלם החלק שניהם.

ה- או העשרונית להיות eהנקודה יכולים שניהם( לא )אך והמעריך מושמטים.

:1234.5דוגמא: דרכים שונות לציון המספר

1234.5f 123.45e1L 1234.5 12345e-1 12.345E+2 1.2345e3

Page 16: מבוא למדעי המחשב

16

strings( מחרוזות 4)

מחרוזות הן סדרות של תווים.: ע"י סדרה של תווים בין מרכאות כפולות.ציון מחרוזת

”hello world“דוגמא:)המחרוזת הריקה(“”

\'0 של תווים שבסופה התו 'רציפה: סדרה ייצוג מחרוזת•

אין הגבלה על אורך מחרוזת, אך יש לסרוק אותה עד סופה כדי לדעת •מה אורכה.

h e l l o w o r l d \‘0’

Page 17: מבוא למדעי המחשב

17

sizeofהפונקציה מקבלת כפרמטר אובייקט או טיפוס ומחזירה את גודלו sizeofהפונקציה

במספר הבתים שמשמשים לאחסונו בזיכרון.

# include <stdio.h>int main( ){

printf(“The size of a char is %d.\n”, sizeof(char));printf(“The size of an int is %d.\n”, sizeof(int));printf(“The size of a long int is %d.\n”, sizeof(long));printf(“The size of a short int is %d.\n”, sizeof(short));printf(“The size of a double is %d.\n”, sizeof(double));printf(“The size of a float is %d.\n”, sizeof(float));printf(“The size of a long double is %d.\n”, sizeof(long double));return 0;

}

Page 18: מבוא למדעי המחשב

18

sizeofהפונקציה

פלט התכנית:

The size of a char is 1.The size of an int is 4.The size of a long int is 4.The size of a short int is 2.The size of a float is 4.The size of a double is 8.The size of a long double is 12.

תלוי בסביבת העבודה

Page 19: מבוא למדעי המחשב

19

sizeofהפונקציה

שאלה: מה יהיה פלט התכנית הבאה:

# include <stdio.h>int main( ){

printf(“%d\n”, sizeof(“string”));return 0;

}

Page 20: מבוא למדעי המחשב

20

sizeofהפונקציה

שאלה: מה יהיה פלט התכנית הבאה:

# include <stdio.h>int main( ){

printf(“%d\n”, sizeof(“”));return 0;

}

Page 21: מבוא למדעי המחשב

21

הגדרת משתנים

משתנים – שמות סימבוליים לתאים בזיכרון.אם תכנית משתמשת במשתנה עליה להגדיר אותו:

int num;

( של משתנה:definitionמטרת הגדרה )

קביעת טיפוס המשתנה )אילו ערכים הוא יוכל לקבל, אילו פעולות 1.ניתן יהיה לבצע עליו(.

הקצאת מקום מספיק בזיכרון עבור משתנה זה.2.

הטיפוס שנקבע עבור משתנה נשאר קבוע במהלך כל חיי התכנית, והמקום שיוקצה עבורו יישאר קבוע אף הוא.

num בשם intהגדרת משתנה מטיפוס

Page 22: מבוא למדעי המחשב

22

תחביר הגדרת משתנים

שמות של רשימה ולאחריו טיפוס, של שם כוללת הגדרה משתנים, אחד או יותר, מופרדים בפסיקים זה מזה. בסוף

(:;הרשימה יבוא הסימן נקודה-פסיק )

int lower, upper, step;char c;

זה שקול ל:

int lower; /* lower range of numbers*/int upper; /* upper range of numbers*/int step;char c;

מאפשר לכתוב הערות )כל מה שנמצא בין /* לבין */( - הקומפיילר

מתעלם לחלוטין מהערות.

כתיבה קומפקטית

Page 23: מבוא למדעי המחשב

23

תחביר הגדרת משתנים

ל ניתן משתנים מגדירים מספר אתחלכאשר לאתחל )וניתן אותם משתנים בהגדרה אחת(:

char one=‘1’;int i=0; double x=2.4, y=3.5, z;

של בהגדרה התכנית. ביצוע במהלך להשתנות עשוי משתנה ערך להוסיף ניתן שהערך constמשתנה בכך ולקבוע הטיפוס שם לפני

אסור שישתנה:

const int num=2;

לא מבטיחה Cמה יקרה אם כן ננסה לשנות ערך זה? תלוי מימוש! )שפת כלום(.