# המרת בסיסים

> ממיר בסיסי מספרים BIN/HEX/DEC/OCT למתכנתים ואחרים. תומך במשלים לשניים, רוחב סיביות 8-64 ומספרים גדולים. הכל חינם ובאינטרנט.

URL: https://acrafto.com/he/number-base-converter/

Tools are interactive browser apps; there is no public API, no endpoints to call and no server-side processing. To use a tool, open its HTML page in a browser.

עולם המחשבים פועל על אפסים ואחדות, אבל אנשים חושבים בעשרות. ומתכנתים? הם צריכים להבין הכל בין לבין. בין אם אתם מנפים שגיאות בקוד נמוך-רמה, מגדירים צבעים ב-CSS, מחשבים מסכות IP או פותרים משימות במדעי המחשב, אתם נתקלים בצורך להמיר מספרים בין בסיסים.

מחשבונים רגילים ב-Windows או בנייד הם לרוב איטיים ומסורבלים. **ממיר בסיסי המספרים החכם** שלנו תוכנן על ידי מפתחים עבור מפתחים. הוא מציע המרה מיידית בזמן אמת, תמיכה במספרים גדולים במיוחד, וכאחד מהכלים המקוונים הבודדים, הוא **מטפל נכון במספרים שליליים בייצוג בינארי**.

## מה ממיר בסיסי המספרים הזה יכול לעשות?

בפיתוח הווידג’ט הזה, התמקדנו בפתרון הבעיות הנפוצות ביותר של מתכנתים:

1. **תגובתיות בזמן אמת:** אין כפתור “חשב”. התחילו להקליד בשדה HEX ותראו מיד כיצד BIN ו-DEC משתנים.
2. **תמיכה במספרים שליליים (Signed Integers):** רוב הממירים המקוונים נכשלים כשאתם מקלידים `-5`. אנחנו לא. הודות לבחירת **רוחב הסיביות** (8, 16, 32, 64 סיביות) אנו מדמים את ההתנהגות המדויקת של המעבד באמצעות מה שנקרא משלים לשניים.
3. **קריאות קוד בינארי:** להסתכל על `1110101011011110` זה קשה לעיניים. הכלי שלנו יכול לעצב אוטומטית את הפלט כל 4 סיביות (ניבלים) ל-`1110 1010 1101 1110`, מה שמפחית באופן דרסטי טעויות בהעתקה.
4. **תמיכת BigInt:** צריכים להמיר מספר 64 סיביות או גיבוב (hash)? JavaScript סטנדרטי מסתיים במספר $2^{53}$. המנוע שלנו יכול לטפל במספרים באורך שרירותי במצב “ללא סימן” (Unsigned).

---

## מדריך לבסיסי מספרים: מתי להשתמש בכל אחד?

### 1\. בסיס עשרוני (DEC - Decimal)

- **בסיס:** 10 (ספרות 0-9)
- **שימוש:** חיי היומיום, פיננסים, ספירת לולאות בקוד.
- **עובדה מעניינת:** מחשבים לא מבינים אותה, הם חייבים להמיר אותה לבינארי.

### 2\. בסיס בינארי (BIN - Binary)

- **בסיס:** 2 (ספרות 0, 1)
- **שימוש:** קוד מכונה, שערים לוגיים, מיסוך כתובות IP.
- **טיפ:** כל ספרה מייצגת סיבית אחת. 8 סיביות מרכיבות בייט אחד (Byte).

### 3\. בסיס הקסדצימלי (HEX - Hexadecimal)

- **בסיס:** 16 (ספרות 0-9, אותיות A-F)
- **שימוש:** ייצוג קומפקטי של קוד בינארי. תו HEX אחד מייצג בדיוק 4 סיביות (ניבל). שני תווים (לדוגמה `FF`) מייצגים בייט שלם.
- **דוגמאות:**
  - צבעים באינטרנט: `#FF5733` (אדום, ירוק, כחול).
  - כתובות MAC: `00:1A:2B:3C:4D:5E`.
  - הטלות זיכרון (Memory dumps).

### 4\. בסיס אוקטלי (OCT - Octal)

- **בסיס:** 8 (ספרות 0-7)
- **שימוש:** מחשבים ישנים יותר מבחינה היסטורית, כיום בעיקר **הרשאות לינוקס** (chmod).
- **דוגמה:** הפקודה `chmod 755` מגדירה את ההרשאות rwx-rx-rx (קריאה, כתיבה, הפעלה).

---

## איך לעבוד נכון עם מספרים שליליים?

זו התכונה המתקדמת ביותר של הממיר שלנו. בזיכרון המחשב לא קיים סימן “מינוס”. כדי לאחסן מספר שלילי, המחשב משתמש לרוב בשיטת **המשלים לשניים (Two’s Complement)**.

אך תוצאת ההמרה של מספר שלילי תלויה בכמה סיביות מוקצות למשתנה. לכן, בסרגל העליון תמצאו את מתג **רוחב סיביות**.

### דוגמה: איך נראה המספר -5?

נסו זאת בעצמכם בממיר שלנו:

1. הגדירו את הרוחב ל-**8 סיביות**.
   - הזינו ב-DEC: `-5`.
   - תוצאת HEX: `FB`.
   - תוצאת BIN: `1111 1011`.
   - *הסבר:* $256 - 5 = 251$ (שזה FB).
2. הגדירו את הרוחב ל-**16 סיביות**.
   - הזינו ב-DEC: `-5`.
   - תוצאת HEX: `FFFB`.
   - *הסבר:* מכיוון שיש לנו יותר מקום, ה”אחדות” ימלאו את שאר המקום משמאל.
3. הגדירו את הרוחב ל-**רק חיוביים (Unsigned)**.
   - אם תזינו `-5`, השדה יהפוך לאדום. מצב זה אינו תומך במספרים שליליים, מכיוון שהוא ידרוש אינסוף אחדות.

> **טיפ למקצוענים:** אם אתם עובדים עם צבעים או כתובות IP, השתמשו תמיד במצב **“רק חיוביים”**. אם אתם עושים שיעורי בית ב-C/C++ או אסמבלר, עברו ל-**32 סיביות** או **64 סיביות**.

---

## טבלת המרות מהירות (Cheat Sheet)

לצורך התמצאות מהירה, להלן הערכים הבסיסיים שכל “איש IT” צריך לדעת בעל פה.

| עשרוני (DEC) | הקסדצימלי (HEX) | בינארי (BIN) | הערה |
| :--- | :--- | :--- | :--- |
| **0** | 00 | 0000 | אפס |
| **1** | 01 | 0001 |  |
| **10** | 0A | 1010 |  |
| **15** | 0F | 1111 | ערך מקסימלי ל-4 סיביות (ניבל) |
| **16** | 10 | 0001 0000 |  |
| **127** | 7F | 0111 1111 | ערך מקסימלי ל-8 סיביות חתומות (char) |
| **255** | FF | 1111 1111 | ערך מקסימלי ל-8 סיביות ללא סימן (בייט) |
| **65 535** | FFFF | … | ערך מקסימלי ל-16 סיביות |

---

## שאלות נפוצות (FAQ)

### מה המשמעות של "עומק סיביות" (Bit Depth)?

מציין כמה זיכרון מוקצה למספר.

- **8 סיביות:** ערכים 0 עד 255 (או -128 עד 127). מתאים לסוג `char` או `byte`.
- **16 סיביות:** ערכים עד 65,535. מתאים לסוג `short`.
- **32 סיביות:** `int` סטנדרטי בשפות מודרניות.
- **64 סיביות:** למספרים גדולים מאוד (`long long`, `BigInt`).

### למה המספר 255 נכתב ב-HEX כ-FF?

לבסיס ההקסדצימלי יש 16 ספרות (0-9 ו-A-F), כאשר ל-F יש ערך של 15. המספר `FF` מחושב כך: $(15 \\times 16^1) + (15 \\times 16^0) = 240 + 15 = 255$.

### איך ממירים צבע HEX ל-RGB?

צבע אינטרנט, לדוגמה `#E05412`, מורכב משלושה בתים: אדום (E0), ירוק (54), כחול (12). הזינו לתוך הממיר שלנו "E0" לשדה HEX -> תקבלו 224. הזינו "54" -> תקבלו 84. הזינו "12" -> תקבלו 18. התוצאה היא `rgb(224, 84, 18)`.

### מה המשמעות של התחיליות 0x, 0b או 0o?

כדי שמתכנתים יוכלו להבחין בין בסיסים שונים, משתמשים בתחיליות:

- `0x` = הקסדצימלי (לדוגמה 0xFF)
- `0b` = בינארי (לדוגמה 0b101)
- `0o` = אוקטלי (לדוגמה 0o755)

הממיר שלנו מזהה סימונים אלה, אך אין צורך לכתוב אותם.

### למה השדה שלי האדים?

זוהי פונקציית אימות קלט. זה אומר שהזנתם תו שאינו שייך לבסיס הנתון. לדוגמה:

- האות "G" ל-HEX (מותר רק A-F).
- הספרה "2" ל-BIN (מותר רק 0 ו-1).
- הספרה "8" ל-OCT (מותר רק 0-7).

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

## Other languages

- Čeština (cs): [Převodník číselných soustav](https://acrafto.com/cs/prevody-ciselnych-soustav/) ([Markdown](https://acrafto.com/cs/prevody-ciselnych-soustav/index.md))
- Slovenčina (sk): [Prevodník číselných sústav](https://acrafto.com/sk/prevodnik-ciselnych-sustav/) ([Markdown](https://acrafto.com/sk/prevodnik-ciselnych-sustav/index.md))
- English (en): [Number System Converter](https://acrafto.com/en/number-system-converter-negative-numbers/) ([Markdown](https://acrafto.com/en/number-system-converter-negative-numbers/index.md))
- Deutsch (de): [Zahlensystem-Konverter](https://acrafto.com/de/zahlensystem-konverter-negative-zahlen/) ([Markdown](https://acrafto.com/de/zahlensystem-konverter-negative-zahlen/index.md))
- Français (fr): [Convertisseur de bases numériques](https://acrafto.com/fr/convertisseur-bases-numeriques/) ([Markdown](https://acrafto.com/fr/convertisseur-bases-numeriques/index.md))
- Español (es): [Conversor de bases numéricas](https://acrafto.com/es/convertidor-sistemas-numericos-numeros-negativos/) ([Markdown](https://acrafto.com/es/convertidor-sistemas-numericos-numeros-negativos/index.md))
- Italiano (it): [Convertitore di basi numeriche](https://acrafto.com/it/convertitore-basi-numeriche/) ([Markdown](https://acrafto.com/it/convertitore-basi-numeriche/index.md))
- Português (pt): [Conversor de bases numéricas](https://acrafto.com/pt/conversor-sistemas-numericos-negativos/) ([Markdown](https://acrafto.com/pt/conversor-sistemas-numericos-negativos/index.md))
- Nederlands (nl): [Getallenstelsels omrekenen](https://acrafto.com/nl/getallenstelsel-converter/) ([Markdown](https://acrafto.com/nl/getallenstelsel-converter/index.md))
- Polski (pl): [Konwerter systemów liczbowych](https://acrafto.com/pl/konwerter-systemow-liczbowych-z-liczbami-ujemnymi/) ([Markdown](https://acrafto.com/pl/konwerter-systemow-liczbowych-z-liczbami-ujemnymi/index.md))
- Română (ro): [Convertor sisteme de numerație](https://acrafto.com/ro/convertor-sisteme-numerice-numere-negative/) ([Markdown](https://acrafto.com/ro/convertor-sisteme-numerice-numere-negative/index.md))
- Magyar (hu): [Számrendszer átváltó](https://acrafto.com/hu/szamrendszer-atalakito-negativ-szamokkal/) ([Markdown](https://acrafto.com/hu/szamrendszer-atalakito-negativ-szamokkal/index.md))
- Ελληνικά (el): [Μετατροπέας αριθμητικών συστημάτων](https://acrafto.com/el/number-system-converter-negative-numbers/) ([Markdown](https://acrafto.com/el/number-system-converter-negative-numbers/index.md))
- Български (bg): [Конвертор на бройни системи](https://acrafto.com/bg/konvertor-chislovi-sistemi/) ([Markdown](https://acrafto.com/bg/konvertor-chislovi-sistemi/index.md))
- Hrvatski (hr): [Pretvarač brojevnih sustava](https://acrafto.com/hr/konverter-brojevnih-sustava-s-negativnim-brojevima/) ([Markdown](https://acrafto.com/hr/konverter-brojevnih-sustava-s-negativnim-brojevima/index.md))
- Slovenščina (sl): [Pretvorba številskih sistemov](https://acrafto.com/sl/pretvarjalnik-stevilskih-sistemov/) ([Markdown](https://acrafto.com/sl/pretvarjalnik-stevilskih-sistemov/index.md))
- Eesti (et): [Arvusüsteemide teisendaja](https://acrafto.com/et/arvususteemide-muundur/) ([Markdown](https://acrafto.com/et/arvususteemide-muundur/index.md))
- Latviešu (lv): [Skaitļu sistēmu konvertors](https://acrafto.com/lv/skaitlu-sistemu-konvertors/) ([Markdown](https://acrafto.com/lv/skaitlu-sistemu-konvertors/index.md))
- Lietuvių (lt): [Skaičių sistemų keitiklis](https://acrafto.com/lt/skaiciu-sistemu-keitiklis/) ([Markdown](https://acrafto.com/lt/skaiciu-sistemu-keitiklis/index.md))
- Svenska (sv): [Talsystemsomvandlare](https://acrafto.com/sv/talsystem-konverterare-negativa-tal/) ([Markdown](https://acrafto.com/sv/talsystem-konverterare-negativa-tal/index.md))
- Dansk (da): [Talsystem omregner](https://acrafto.com/da/talsystem-omregner/) ([Markdown](https://acrafto.com/da/talsystem-omregner/index.md))
- Suomi (fi): [Lukujärjestelmämuunnin](https://acrafto.com/fi/lukujarjestelma-muunnin/) ([Markdown](https://acrafto.com/fi/lukujarjestelma-muunnin/index.md))
- Norsk (no): [Tallsystemkonverterer](https://acrafto.com/no/tallsystemkonverterer-negative-tall/) ([Markdown](https://acrafto.com/no/tallsystemkonverterer-negative-tall/index.md))
- Українська (uk): [Конвертер систем числення](https://acrafto.com/uk/konverter-chyselnykh-system/) ([Markdown](https://acrafto.com/uk/konverter-chyselnykh-system/index.md))
- Русский (ru): [Конвертер систем счисления](https://acrafto.com/ru/konverter-sistem-schisleniya/) ([Markdown](https://acrafto.com/ru/konverter-sistem-schisleniya/index.md))
- Српски (sr): [Konverter brojevnih sistema](https://acrafto.com/sr/konverter-brojevnih-sistema/) ([Markdown](https://acrafto.com/sr/konverter-brojevnih-sistema/index.md))
- Македонски (mk): [Претворач на бројни системи](https://acrafto.com/mk/pretvornik-brojni-sistemi/) ([Markdown](https://acrafto.com/mk/pretvornik-brojni-sistemi/index.md))
- Bosanski (bs): [Konverter brojevnih sistema](https://acrafto.com/bs/konverter-brojevnih-sistema/) ([Markdown](https://acrafto.com/bs/konverter-brojevnih-sistema/index.md))
- Shqip (sq): [Konvertues sistemesh numerike](https://acrafto.com/sq/konvertues-sistemesh-numerike/) ([Markdown](https://acrafto.com/sq/konvertues-sistemesh-numerike/index.md))
- Türkçe (tr): [Sayı sistemleri dönüştürücü](https://acrafto.com/tr/sayi-sistemleri-donusturucu/) ([Markdown](https://acrafto.com/tr/sayi-sistemleri-donusturucu/index.md))
- 日本語 (ja): [進数変換](https://acrafto.com/ja/number-system-converter/) ([Markdown](https://acrafto.com/ja/number-system-converter/index.md))
- 한국어 (ko): [진법 변환기](https://acrafto.com/ko/number-system-converter/) ([Markdown](https://acrafto.com/ko/number-system-converter/index.md))
- العربية (ar): [تحويل الأنظمة العددية](https://acrafto.com/ar/number-system-converter/) ([Markdown](https://acrafto.com/ar/number-system-converter/index.md))
- हिन्दी (hi): [संख्या प्रणाली कनवर्टर](https://acrafto.com/hi/number-system-converter/) ([Markdown](https://acrafto.com/hi/number-system-converter/index.md))
- Bahasa Indonesia (id): [Konverter sistem bilangan](https://acrafto.com/id/konverter-sistem-bilangan/) ([Markdown](https://acrafto.com/id/konverter-sistem-bilangan/index.md))
- Tiếng Việt (vi): [Chuyển đổi hệ cơ số](https://acrafto.com/vi/chuyen-doi-he-co-so-so-voi-so-am/) ([Markdown](https://acrafto.com/vi/chuyen-doi-he-co-so-so-voi-so-am/index.md))
- ไทย (th): [แปลงเลขฐาน](https://acrafto.com/th/tua-plaeng-rabop-tua-lek/) ([Markdown](https://acrafto.com/th/tua-plaeng-rabop-tua-lek/index.md))
