- 1 1. āļāļāļāļģ: āđāļŦāļāļļāļāļĨāļāļĩāđāđāļāđāđāļĨāļāļāļēāļāļŠāļāļāđāļāļ āļēāļĐāļē C
- 1.1 āđāļŦāļāļļāļāļĨāļāļĩāđāļāđāļāļāđāļāđāđāļĨāļāļāļēāļāļŠāļāļāđāļāļ āļēāļĐāļē C
- 1.1.1 āđāļāļĢāļāļŠāļĢāđāļēāļāļāļēāļĢāļāļģāļāļēāļāļāļāļāļāļāļĄāļāļīāļ§āđāļāļāļĢāđāđāļĨāļ°āđāļĨāļāļāļēāļāļŠāļāļ
- 1.1.2 āļāļēāļĢāļāļąāļāļāļēāļĢāļŦāļāđāļ§āļĒāļāļ§āļēāļĄāļāļģāđāļĨāļ°āļāļēāļĢāļāļāļāđāļāļāđāļāļĢāđāļāļĢāļĄāļāļĒāđāļēāļāļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļ
- 1.1.3 āļāļēāļĢāļāļąāļāļāļēāļĢāđāļāļĨāđāļāđāļĨāļ°āļāļēāļĢāđāļāđāļāļīāļ
- 1.2 āļŠāļīāđāļāļāļĩāđāļāļ°āđāļāđāđāļĢāļĩāļĒāļāļĢāļđāđāļāļēāļāļāļāļāļ§āļēāļĄāļāļĩāđ
- 1.1 āđāļŦāļāļļāļāļĨāļāļĩāđāļāđāļāļāđāļāđāđāļĨāļāļāļēāļāļŠāļāļāđāļāļ āļēāļĐāļē C
- 2 2. āđāļĨāļāļāļēāļāļŠāļāļāļāļ·āļāļāļ°āđāļĢ? āđāļĢāļĩāļĒāļāļĢāļđāđāļāļ·āđāļāļāļēāļ
- 2.1 āļāļ·āđāļāļāļēāļāļāļāļāđāļĨāļāļāļēāļāļŠāļāļ
- 2.2 āļāļ§āļēāļĄāđāļāļāļāđāļēāļāļāļąāļāđāļĨāļāļāļēāļāļŠāļīāļ
- 2.3 āļ§āļīāļāļĩāđāļāļĨāļāđāļĨāļāļāļēāļāļŠāļīāļāđāļāđāļāđāļĨāļāļāļēāļāļŠāļāļ
- 2.4 āļ§āļīāļāļĩāđāļāļĨāļāđāļĨāļāļāļēāļāļŠāļāļāđāļāđāļāđāļĨāļāļāļēāļāļŠāļīāļ
- 2.5 āđāļŦāļāļļāļāļĨāļāļĩāđāđāļāđāđāļĨāļāļāļēāļāļŠāļāļ
- 3 3. āļ§āļīāļāļĩāļāļēāļĢāđāļŠāļāļāđāļĨāļāļāļēāļāļŠāļāļāđāļāļ āļēāļĐāļē C
- 4 4. āļ§āļīāļāļĩāļāļēāļĢāđāļāļĨāļāđāļĨāļāļāļēāļāļŠāļīāļāđāļāđāļāđāļĨāļāļāļēāļāļŠāļāļ
- 4.1 āļāļēāļĢāđāļāļĨāļāļāđāļ§āļĒāļĄāļ·āļ
- 4.2 āđāļāļĢāđāļāļĢāļĄ C āļŠāļģāļŦāļĢāļąāļāđāļāļĨāļāļāļēāļāļŠāļīāļāđāļāđāļāļāļēāļāļŠāļāļ
- 4.3 āļāļēāļĢāđāļāđāļāļīāļāđāļāļ·āđāļāđāļāļĨāļāļāļĒāđāļēāļāļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļ
- 4.4 āļāļąāļ§āļāļĒāđāļēāļāļāļēāļĢāđāļāđāļāļēāļāļāļĢāļīāļāļāļāļāļāļēāļĢāđāļāļĨāļāđāļāđāļāļāļēāļāļŠāļāļ
- 4.5 āļāđāļāļāļ§āļĢāļĢāļ°āļ§āļąāļ
- 5 5. āļ§āļīāļāļĩāļāļēāļĢāđāļāļĨāļāđāļĨāļāļāļēāļāļŠāļāļāđāļāđāļāđāļĨāļāļāļēāļāļŠāļīāļ
- 6 6. āļ§āļīāļāļĩāļāļēāļĢāđāļŠāļāļāđāļĨāļāļāļēāļāļŠāļāļāđāļāļ āļēāļĐāļē C
- 6.1 āļāļēāļĢāđāļāđ printf āđāļāļ·āđāļāđāļŠāļāļāđāļĨāļāļāļēāļāļŠāļāļ
- 6.2 āļāļēāļĢāļŠāļĢāđāļēāļāļāļąāļāļāđāļāļąāļāđāļŠāļāļāđāļĨāļāļāļēāļāļŠāļāļāđāļāļāļĒāļ·āļāļŦāļĒāļļāđāļ
- 6.3 āļāļēāļĢāđāļŠāļāļāļāļĨāđāļāļĢāļđāļāđāļāļāļŠāļāļĢāļīāļ
- 6.4 āļāļēāļĢāļāļąāļāļĢāļđāļāđāļāļāđāļŦāđāļāđāļēāļāļāđāļēāļĒāļāļķāđāļ
- 6.5 āļāđāļāļāļ§āļĢāļĢāļ°āļ§āļąāļ
- 7 7. āđāļĢāļĩāļĒāļāļĢāļđāđāļāļēāļĢāļāļģāđāļāļīāļāļāļēāļĢāļāļīāļāļāļąāđāļāđāļāđāļāļ·āđāļāļāļēāļāļāļāļāļķāļāļāļąāđāļāļāļĢāļ°āļĒāļļāļāļāđ
- 8 8. āļāļēāļĢāđāļāđāļāļēāļāļāļĢāļīāļ: āļāļąāļ§āļāļĒāđāļēāļāļāļēāļĢāļāļĢāļ°āļĒāļļāļāļāđāđāļĨāļāļāļēāļāļŠāļāļ
- 8.1 1. āļāļēāļĢāļŠāļĢāđāļēāļāļāļąāļ§āļāļąāļāđāļāļāļāļēāļāļŠāļāļ (Binary Counter)
- 8.2 2. āļāļēāļĢāļāļąāļāļāļēāļĢāļŦāļāđāļ§āļĒāļāļ§āļēāļĄāļāļģāļāļĒāđāļēāļāļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļāļāđāļ§āļĒ Bit Field
- 8.3 3. āļāļēāļĢāļāļĢāļ§āļāļŠāļāļāļāļīāļāđāļāļāļēāļ°āļāļģāđāļŦāļāđāļ
- 8.4 4. āļāļēāļĢāļāļģāļāļ§āļ Subnet Mask āļāļāļ IP Address
- 8.5 āļāđāļāļāļ§āļĢāļĢāļ°āļ§āļąāļ
- 9 9. āļāļģāļāļēāļĄāļāļĩāđāļāļāļāđāļāļĒ (FAQ): āđāļāļĩāđāļĒāļ§āļāļąāļāđāļĨāļāļāļēāļāļŠāļāļāđāļāļ āļēāļĐāļē C
- 9.1 Q1: āđāļāļ āļēāļĐāļē C āļŠāļēāļĄāļēāļĢāļāđāļāļĩāļĒāļāđāļĨāļāļāļēāļāļŠāļāļāđāļāļĒāļāļĢāļāđāļāđāļŦāļĢāļ·āļāđāļĄāđ?
- 9.2 Q2: āļāđāļāļāļĢāļ°āļ§āļąāļāļāļ°āđāļĢāļāđāļēāļāđāļĄāļ·āđāļāđāļāđāđāļĨāļāļāļēāļāļŠāļāļ?
- 9.3 Q3: āļāļ°āđāļāđāđāļāļāļīāļāđāļāļĩāļĒāļāļāļēāļāļāļģāđāļŦāļāđāļāđāļāđāļāļĒāđāļēāļāđāļĢ?
- 9.4 Q4: āļāļģāđāļĄāļāļēāļĢāļāļģāđāļāļīāļāļāļēāļĢāļāļīāļāļāļąāļāļāđāļēāļĨāļāļāļķāļāđāļāđāļāļĨāļĨāļąāļāļāđāļāđāļēāļāđāļ?
- 9.5 Q5: āļŠāļēāļĄāļēāļĢāļāļŠāļĢāđāļēāļāļāļąāļāļāđāļāļąāļāđāļāļĨāļāđāļĨāļāļāļēāļāļŠāļīāļ â āđāļĨāļāļāļēāļāļŠāļāļ āđāļāđāļāđāļēāļĒāļŦāļĢāļ·āļāđāļĄāđ?
- 9.6 Q6: āļāđāļāļāļĩāļāļāļāļāļēāļĢāđāļāđ Bit Field āļāļ·āļāļāļ°āđāļĢ?
- 9.7 Q7: āļ§āļīāļāļĩāļāļēāļĢāļāļĩāļāļąāļāđāļāđāļāļāļĩāđāđāļāđāļāļēāļĢāļāļģāđāļāļīāļāļāļēāļĢāļāļīāļāđāļŦāđāļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļ?
- 10 10. āļŠāļĢāļļāļāđāļĨāļ°āļāļąāđāļāļāļāļāļāļąāļāđāļ
1. āļāļāļāļģ: āđāļŦāļāļļāļāļĨāļāļĩāđāđāļāđāđāļĨāļāļāļēāļāļŠāļāļāđāļāļ āļēāļĐāļē C
āļ āļēāļĐāļēāđāļāļĢāđāļāļĢāļĄ āļ āļēāļĐāļē C āļāļđāļāđāļāđāļāļĒāđāļēāļāļāļ§āđāļēāļāļāļ§āļēāļāđāļāļāļēāļĢāļāļąāļāļāļēāļĢāļ°āļāļąāļāļĢāļ°āļāļ āļāļķāđāļāļŠāļēāļĄāļēāļĢāļāļāļąāļāļāļēāļĢāļŦāļāđāļ§āļĒāļāļ§āļēāļĄāļāļģāđāļĨāļ°āļāļ§āļāļāļļāļĄāļāļļāļāļāļĢāļāđāđāļāđāđāļāļĒāļāļĢāļ āļāļ§āļēāļĄāļĢāļđāđāđāļāļĩāđāļĒāļ§āļāļąāļ āđāļĨāļāļāļēāļāļŠāļāļ āļāļķāļāđāļāđāļāļŠāļīāđāļāļŠāļģāļāļąāļ āļāļāļāļ§āļēāļĄāļāļĩāđāļāļ°āļāļāļīāļāļēāļĒāļāļąāđāļāđāļāđāļāļ·āđāļāļāļēāļāļāļāļāļķāļāļāļąāđāļāļāļĢāļ°āļĒāļļāļāļāđāđāļāļāļēāļĢāđāļāđāđāļĨāļāļāļēāļāļŠāļāļāđāļāļ āļēāļĐāļē C
āđāļŦāļāļļāļāļĨāļāļĩāđāļāđāļāļāđāļāđāđāļĨāļāļāļēāļāļŠāļāļāđāļāļ āļēāļĐāļē C
āđāļāļĢāļāļŠāļĢāđāļēāļāļāļēāļĢāļāļģāļāļēāļāļāļāļāļāļāļĄāļāļīāļ§āđāļāļāļĢāđāđāļĨāļ°āđāļĨāļāļāļēāļāļŠāļāļ
āļāļāļĄāļāļīāļ§āđāļāļāļĢāđāļāļĢāļ°āļĄāļ§āļĨāļāļĨāļāđāļāļĄāļđāļĨāļ āļēāļĒāđāļāļāđāļ§āļĒ āđāļĨāļāļāļēāļāļŠāļāļ āļāļķāđāļāļāļĢāļ°āļāļāļāļāđāļ§āļĒ 0 āđāļĨāļ° 1 āļŠāļāļāļāļĨāđāļāļāļāļąāļāļŠāļąāļāļāļēāļāđāļāļāđāļē âāđāļāļīāļ (1)â āđāļĨāļ° âāļāļīāļ (0)â āļāļķāđāļāđāļāđāļāļ§āļīāļāļĩāļāļēāļĢāđāļāļāļāđāļāļĄāļđāļĨāļāļĩāđāļāļ·āđāļāļāļēāļāļāļĩāđāļŠāļļāļ āļ āļēāļĐāļē C āđāļŦāļĄāļēāļ°āļŠāļĄāļāļĒāđāļēāļāļĒāļīāđāļāļŠāļģāļŦāļĢāļąāļāļāļēāļĢāļāļģāļāļēāļāļĢāļ°āļāļąāļāļāđāļģāđāļŦāļĨāđāļēāļāļĩāđ āļāļķāļāļāļ§āļĢāļāļģāļāļ§āļēāļĄāđāļāđāļēāđāļāļāļēāļĢāđāļāđāđāļĨāļāļāļēāļāļŠāļāļ
āļāļēāļĢāļāļąāļāļāļēāļĢāļŦāļāđāļ§āļĒāļāļ§āļēāļĄāļāļģāđāļĨāļ°āļāļēāļĢāļāļāļāđāļāļāđāļāļĢāđāļāļĢāļĄāļāļĒāđāļēāļāļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļ
āđāļĄāļ·āđāļāđāļāļĢāđāļāļĢāļĄāļāļąāļāđāļāđāļāļāđāļāļĄāļđāļĨāđāļāļŦāļāđāļ§āļĒāļāļ§āļēāļĄāļāļģ āļāļ°āđāļāđāđāļĨāļāļāļēāļāļŠāļāļāđāļāļ·āđāļāļāļīāļāļēāļĢāļāļēāļāļāļēāļāļāđāļāļĄāļđāļĨāđāļĨāļ°āļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļ āđāļāđāļ āļāļēāļĢāļāļąāļāļāļēāļĢāļāđāļāļĄāļđāļĨāđāļāļĢāļ°āļāļąāļāļāļīāļāļāđāļ§āļĒāļāļĢāļ°āļŦāļĒāļąāļāļŦāļāđāļ§āļĒāļāļ§āļēāļĄāļāļģāđāļĨāļ°āļāļģāđāļŦāđāđāļāļĢāđāļāļĢāļĄāļāļģāļāļēāļāđāļāđāđāļĢāđāļ§āļāļķāđāļ āļāļąāļāļĐāļ°āļāļēāļĢāļāļąāļāļāļēāļĢāđāļĨāļāļāļēāļāļŠāļāļāđāļāļ āļēāļĐāļē C āļāļķāļāļāļģāđāļāđāļāļāđāļ āļāļēāļĢāļāļĢāļ°āļŦāļĒāļąāļāļāļĢāļąāļāļĒāļēāļāļĢāđāļĨāļ°āđāļāļīāđāļĄāļāļ§āļēāļĄāđāļĢāđāļ§āđāļāļĢāđāļāļĢāļĄ
āļāļēāļĢāļāļąāļāļāļēāļĢāđāļāļĨāđāļāđāļĨāļ°āļāļēāļĢāđāļāđāļāļīāļ
āđāļāļ āļēāļĐāļē C āļŠāļēāļĄāļēāļĢāļāđāļāđ āļāļēāļĢāļāļģāđāļāļīāļāļāļēāļĢāļāļīāļ (Bitwise Operations) āđāļāļ·āđāļāļāļąāļāļāļēāļĢāđāļāļĨāđāļāļŦāļĢāļ·āļāđāļāđāđāļāļāļēāļāļŠāđāļ§āļāļāļāļāļāđāļāļĄāļđāļĨāđāļāđāļāļĒāđāļēāļāļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļ āļāļģāđāļŦāđāļŠāļēāļĄāļēāļĢāļāļāļāļāđāļāļāļāļąāļĨāļāļāļĢāļīāļāļķāļĄāđāļĨāļ°āļĢāļ°āļāļāļāļĩāđāļāļąāļāļāđāļāļāđāļāđ
āļŠāļīāđāļāļāļĩāđāļāļ°āđāļāđāđāļĢāļĩāļĒāļāļĢāļđāđāļāļēāļāļāļāļāļ§āļēāļĄāļāļĩāđ
āļāļāļāļ§āļēāļĄāļāļĩāđāļāļĢāļāļāļāļĨāļļāļĄāđāļāļ·āđāļāļŦāļēāļāļąāļāļāļĩāđ:
- āļāļ·āđāļāļāļēāļāļāļāļāđāļĨāļāļāļēāļāļŠāļāļ
- āļ§āļīāļāļĩāļāļēāļĢāđāļŠāļāļāđāļĨāļāļāļēāļāļŠāļāļāđāļāļ āļēāļĐāļē C
- āļāļēāļĢāđāļāļĨāļāļĢāļ°āļŦāļ§āđāļēāļāđāļĨāļāļāļēāļāļŠāļāļāđāļĨāļ°āļāļēāļāļŠāļīāļ
- āļāļ·āđāļāļāļēāļāđāļĨāļ°āļāļēāļĢāļāļĢāļ°āļĒāļļāļāļāđāļāļāļāļāļēāļĢāļāļģāđāļāļīāļāļāļēāļĢāļāļīāļ
- āļāļąāļ§āļāļĒāđāļēāļāđāļāđāļāđāļĨāļ°āļŠāļāļēāļāļāļēāļĢāļāđāļāļēāļĢāđāļāđāļāļēāļāļāļĢāļīāļ
āđāļāļ·āđāļāļŦāļēāļāļĩāđāđāļŦāļĄāļēāļ°āļŠāļģāļŦāļĢāļąāļāļāļąāđāļāļāļđāđāđāļĢāļīāđāļĄāļāđāļāđāļĨāļ°āļāļđāđāļĄāļĩāļāļĢāļ°āļŠāļāļāļēāļĢāļāđāļĢāļ°āļāļąāļāļāļĨāļēāļāļāļĩāđāļāđāļāļāļāļēāļĢāđāļāđāļēāđāļāļāļēāļĢāđāļāđāđāļĨāļāļāļēāļāļŠāļāļāđāļāļ āļēāļĐāļē C āđāļŦāđāļĨāļķāļāļāļķāđāļ
2. āđāļĨāļāļāļēāļāļŠāļāļāļāļ·āļāļāļ°āđāļĢ? āđāļĢāļĩāļĒāļāļĢāļđāđāļāļ·āđāļāļāļēāļ
āđāļĨāļāļāļēāļāļŠāļāļāđāļāđāļāļĢāļ°āļāļāļāļąāļ§āđāļĨāļāļāļĩāđāļāļāļĄāļāļīāļ§āđāļāļāļĢāđāđāļāđāđāļāļāļēāļĢāļāļĢāļ°āļĄāļ§āļĨāļāļĨāļāđāļāļĄāļđāļĨ āļāļēāļĢāđāļāđāļēāđāļāđāļāļĢāļāļŠāļĢāđāļēāļāđāļĨāļ°āđāļāļ§āļāļīāļāļāļ·āđāļāļāļēāļāļāļāļāļĄāļąāļāļāļ°āļāđāļ§āļĒāļŠāļĢāđāļēāļāļĢāļēāļāļāļēāļāļāļĩāđāļŠāļģāļāļąāļāļŠāļģāļŦāļĢāļąāļāļāļēāļĢāđāļāļĩāļĒāļāđāļāļĢāđāļāļĢāļĄāļāđāļ§āļĒāļ āļēāļĐāļē C āđāļāļŦāļąāļ§āļāđāļāļāļĩāđāđāļĢāļēāļāļ°āļāļāļīāļāļēāļĒāļ§āđāļēāđāļĨāļāļāļēāļāļŠāļāļāļāļ·āļāļāļ°āđāļĢ āđāļŦāļāļļāļāļĨāļāļĩāđāļāļāļĄāļāļīāļ§āđāļāļāļĢāđāđāļāđāļĄāļąāļ āļĢāļ§āļĄāļāļķāļāļāļ§āļēāļĄāđāļāļāļāđāļēāļāđāļĨāļ°āļāļēāļĢāđāļāļĨāļāļāļąāļāđāļĨāļāļāļēāļāļŠāļīāļ
āļāļ·āđāļāļāļēāļāļāļāļāđāļĨāļāļāļēāļāļŠāļāļ
āđāļĨāļāļāļēāļāļŠāļāļ (Binary) āđāļāđāđāļāļĩāļĒāļāļāļąāļ§āđāļĨāļ 0 āđāļĨāļ° 1 āđāļāļāļēāļĢāđāļāļāļāđāļē āļŠāļāļāļāļĨāđāļāļāļāļąāļāļŠāļąāļāļāļēāļāđāļāļāđāļē âāđāļāļīāļâ āđāļĨāļ° âāļāļīāļâ āļāļķāđāļāđāļāđāļāļāļ·āđāļāļāļēāļāļāļāļāđāļāļāđāļāđāļĨāļĒāļĩāļāļīāļāļīāļāļąāļĨ
āļāļąāļ§āļāļĒāđāļēāļ:
- āđāļĨāļāļāļēāļāļŠāļīāļ â1â āļāļ·āļ â1â āđāļāļāļēāļāļŠāļāļ
- āđāļĨāļāļāļēāļāļŠāļīāļ â2â āļāļ·āļ â10â āđāļāļāļēāļāļŠāļāļ
- āđāļĨāļāļāļēāļāļŠāļīāļ â3â āļāļ·āļ â11â āđāļāļāļēāļāļŠāļāļ
āļāļīāļāđāļĨāļ°āđāļāļāđ
āļŦāļāđāļ§āļĒāļāļ·āđāļāļāļēāļāļāļāļāđāļĨāļāļāļēāļāļŠāļāļāļāļ·āļ āļāļīāļ (bit) āļāļķāđāļāļĄāļĩāļāđāļēāđāļāđāđāļāļĩāļĒāļ 0 āļŦāļĢāļ·āļ 1 āđāļĨāļ°āđāļāđāļāļŦāļāđāļ§āļĒāļāđāļāļĄāļđāļĨāļāļĩāđāđāļĨāđāļāļāļĩāđāļŠāļļāļ
8 āļāļīāļāđāļĢāļĩāļĒāļāļ§āđāļē 1 āđāļāļāđ āļāļķāđāļāļāļēāļĢāļāļĢāļ°āļĄāļ§āļĨāļāļĨāļĄāļąāļāđāļāđāđāļāđāļāļŦāļāđāļ§āļĒāļāļĩāđ
āļāļąāļ§āļāļĒāđāļēāļ:
- 8 āļāļīāļ (1 āđāļāļāđ): 00000000 āļāļķāļ 11111111 (āđāļāļāļāđāļēāđāļāđāļāļąāđāļāđāļāđ 0â255)
āļāļ§āļēāļĄāđāļāļāļāđāļēāļāļāļąāļāđāļĨāļāļāļēāļāļŠāļīāļ
āđāļāļāļĩāļ§āļīāļāļāļĢāļ°āļāļģāļ§āļąāļ āđāļĢāļēāļĄāļąāļāđāļāđāđāļĨāļāļāļēāļāļŠāļīāļāļāļķāđāļāļĄāļĩāļāļąāļ§āđāļĨāļāļāļąāđāļāđāļāđ 0 āļāļķāļ 9 āļāļāļ°āļāļĩāđāđāļĨāļāļāļēāļāļŠāļāļāļĄāļĩāđāļāļĩāļĒāļ 0 āđāļĨāļ° 1 āļāļēāļĢāđāļāđāļēāđāļāļāļ§āļēāļĄāđāļāļāļāđāļēāļāļāļĩāđāļāđāļ§āļĒāđāļŦāđāļāļēāļĢāđāļāļĨāļāļāļąāļ§āđāļĨāļāđāļĨāļ°āļāļēāļĢāļāļāļāđāļāļāļāļąāļĨāļāļāļĢāļīāļāļķāļĄāļāļģāđāļāđāļāđāļēāļĒāļāļķāđāļ
āļāļąāļ§āļāļĒāđāļēāļ:
āđāļĨāļāļāļēāļāļŠāļīāļ | āđāļĨāļāļāļēāļāļŠāļāļ |
---|---|
0 | 0 |
1 | 1 |
2 | 10 |
3 | 11 |
4 | 100 |
āļ§āļīāļāļĩāđāļāļĨāļāđāļĨāļāļāļēāļāļŠāļīāļāđāļāđāļāđāļĨāļāļāļēāļāļŠāļāļ
āļāļēāļĢāđāļāļĨāļāđāļĨāļāļāļēāļāļŠāļīāļāđāļāđāļāđāļĨāļāļāļēāļāļŠāļāļāļŠāļēāļĄāļēāļĢāļāļāļģāđāļāđāđāļāļĒāđāļāđ āļāļēāļĢāļŦāļēāļĢāđāļāļēāđāļĻāļĐ
- āļāļģāļāđāļēāļāļēāļāļŠāļīāļāļĄāļēāļŦāļēāļĢāļāđāļ§āļĒ 2
- āļāļģāļāļĨāļĨāļąāļāļāđāļĄāļēāļŦāļēāļĢāļāđāļ§āļĒ 2 āļāļĩāļāļāļĢāļąāđāļāđāļĨāļ°āļāļāđāļĻāļĐ
- āļāļģāļāđāļģāļāļāļāļĨāļŦāļēāļĢāđāļāđāļ 0 āļāļēāļāļāļąāđāļāļāļģāđāļĻāļĐāļāļĩāđāđāļāđāļĄāļēāđāļĢāļĩāļĒāļāļĒāđāļāļāļāļĨāļąāļ
āļāļąāļ§āļāļĒāđāļēāļ: āđāļāļĨāļāđāļĨāļāļāļēāļāļŠāļīāļ â13â āđāļāđāļāđāļĨāļāļāļēāļāļŠāļāļ
- 13 ÷ 2 = 6 āđāļĻāļĐ 1
- 6 ÷ 2 = 3 āđāļĻāļĐ 0
- 3 ÷ 2 = 1 āđāļĻāļĐ 1
- 1 ÷ 2 = 0 āđāļĻāļĐ 1
āļāļĨāļĨāļąāļāļāđ: 1101
āļ§āļīāļāļĩāđāļāļĨāļāđāļĨāļāļāļēāļāļŠāļāļāđāļāđāļāđāļĨāļāļāļēāļāļŠāļīāļ
āļāļēāļĢāđāļāļĨāļāđāļĨāļāļāļēāļāļŠāļāļāđāļāđāļāđāļĨāļāļāļēāļāļŠāļīāļāļāļģāđāļāļĒāļāļģāļāđāļēāļāļāļāđāļāđāļĨāļ°āļāļīāļāļĄāļēāļāļđāļāļāļąāļ 2 āļĒāļāļāļģāļĨāļąāļāļāļēāļĄāļāļģāđāļŦāļāđāļāđāļĨāļ°āļĢāļ§āļĄāļāļąāļ
āļāļąāļ§āļāļĒāđāļēāļ: āđāļāļĨāļāđāļĨāļāļāļēāļāļŠāļāļ â1101â āđāļāđāļāđāļĨāļāļāļēāļāļŠāļīāļ
- āļāļīāļāļāļ§āļēāļŠāļļāļ: 1 à 2^0 = 1
- āļāļīāļāļāļąāļāļĄāļē: 0 à 2^1 = 0
- āļāļīāļāļāļąāļāļĄāļē: 1 à 2^2 = 4
- āļāļīāļāļāđāļēāļĒāļŠāļļāļ: 1 à 2^3 = 8
āļāļĨāļĨāļąāļāļāđ: 1 + 0 + 4 + 8 = 13
āđāļŦāļāļļāļāļĨāļāļĩāđāđāļāđāđāļĨāļāļāļēāļāļŠāļāļ
- āļāļ§āļēāļĄāđāļĢāļĩāļĒāļāļāđāļēāļĒ: āļāļāļĄāļāļīāļ§āđāļāļāļĢāđāļāļģāļāļēāļāļāļāļŠāļąāļāļāļēāļāđāļāļāđāļēāļāļĩāđāļĄāļĩ 2 āļŠāļāļēāļāļ° (āđāļāļīāļ/āļāļīāļ) āđāļĨāļāļāļēāļāļŠāļāļāļāļķāļāļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļāļŠāļđāļ
- āļāļ§āļēāļĄāđāļŠāļāļĩāļĒāļĢ: āđāļĨāļāļāļēāļāļŠāļāļāļāļāļāđāļāļāļ§āļēāļĄāļāļīāļāļāļĨāļēāļāļāļēāļāļāļēāļĢāđāļāļĨāļĩāđāļĒāļāđāļāļĨāļāđāļĨāđāļāļāđāļāļĒāļāļāļāļŠāļąāļāļāļēāļ āļāļģāđāļŦāđāļāļĢāļ°āļĄāļ§āļĨāļāļĨāđāļāđāđāļĄāđāļāļĒāļģ
3. āļ§āļīāļāļĩāļāļēāļĢāđāļŠāļāļāđāļĨāļāļāļēāļāļŠāļāļāđāļāļ āļēāļĐāļē C
āđāļāļāļēāļĢāđāļāđāđāļĨāļāļāļēāļāļŠāļāļāđāļāļ āļēāļĐāļē C āđāļāļ·āđāļāļāļāļēāļāļĄāļēāļāļĢāļāļēāļāļāļāļāļ āļēāļĐāļēāđāļĄāđāđāļāđāļĢāļāļāļĢāļąāļāļāļēāļĢāđāļāļĩāļĒāļāļāđāļēāļāļēāļāļŠāļāļāđāļāļĒāļāļĢāļ āļāļķāļāļāđāļāļāđāļāđāđāļāļāļāļīāļāļŦāļĢāļ·āļāļ§āļīāļāļĩāļāļēāļĢāļāļīāđāļĻāļĐ āđāļāļŠāđāļ§āļāļāļĩāđāđāļĢāļēāļāļ°āļāļāļīāļāļēāļĒāļ§āļīāļāļĩāļāļēāļĢāļāļ·āđāļāļāļēāļāđāļāļāļēāļĢāđāļŠāļāļāđāļĨāļāļāļēāļāļŠāļāļ āļāđāļāļāļ§āļĢāļĢāļ°āļ§āļąāļ āđāļĨāļ°āđāļāļāļāļīāļāļāļĩāđāļĄāļĩāļāļĢāļ°āđāļĒāļāļāđāļŠāļģāļŦāļĢāļąāļāļāļēāļĢāđāļāđāļāļēāļāļāļĢāļīāļ
āļ§āļīāļāļĩāđāļāļĩāļĒāļāđāļĨāļāļāļēāļāļŠāļāļāđāļāļāļĨāļīāđāļāļāļĢāļąāļĨ
āļ āļēāļĐāļē C āļĄāļēāļāļĢāļāļēāļāđāļĄāđāļĄāļĩāļ§āļīāļāļĩāđāļāļĩāļĒāļāđāļĨāļāļāļēāļāļŠāļāļāđāļāļāļāļĢāļāđ āđāļāđāļŠāļēāļĄāļēāļĢāļāđāļāđāđāļĨāļāļāļēāļāļāļ·āđāļ (āđāļāđāļ āļāļēāļāļŠāļīāļāļŦāļ āļāļēāļāļŠāļīāļ āļāļēāļāđāļāļ) āđāļāļāđāļāļ·āđāļāļāļąāļāļāļēāļĢāļāļąāļāļāđāļēāļāļēāļāļŠāļāļāđāļāđ
āđāļāđāđāļĨāļāļāļēāļāļŠāļīāļāļŦāļāļŦāļĢāļ·āļāļāļēāļāļŠāļīāļāđāļāļāđāļĨāļāļāļēāļāļŠāļāļ
- āđāļĨāļāļāļēāļāļŠāļīāļāļŦāļ: 1 āļŦāļĨāļąāļāļāļāļāļāļēāļāļŠāļīāļāļŦāļāļāļĢāļāļāļąāļ 4 āļāļīāļāļāļāļāđāļĨāļāļāļēāļāļŠāļāļ āļāļģāđāļŦāđāđāļāđāļāļēāļāđāļāđāļŠāļ°āļāļ§āļ
- āļāļąāļ§āļāļĒāđāļēāļ:
0b1010
(āļāļēāļāļŠāļāļ) āļŠāļēāļĄāļēāļĢāļāđāļāļĩāļĒāļāđāļāđāļ0xA
(āļāļēāļāļŠāļīāļāļŦāļ)
āđāļāđāļāļēāļĢāđāļĨāļ·āđāļāļāļāļīāļ (Bit Shift)
āđāļĄāđāļāļ°āđāļĄāđāļĄāļĩāļĨāļīāđāļāļāļĢāļąāļĨāļāļēāļāļŠāļāļ āđāļāđāļŠāļēāļĄāļēāļĢāļāđāļāđāļāļēāļĢāđāļĨāļ·āđāļāļāļāļīāļāđāļāļ·āđāļāļŠāļĢāđāļēāļāļāđāļēāļāļēāļāļŠāļāļāđāļāđ
#include <stdio.h>
int main() {
int value = (1 << 3) | (1 << 1); // āđāļāļāļāđāļē 1010 āđāļāļāļēāļāļŠāļāļ
printf("Value: %d\n", value); // āđāļŠāļāļāļāļĨ 10 (āļāļēāļāļŠāļīāļ)
return 0;
}
āđāļāļāļąāļ§āļāļĒāđāļēāļāļāļĩāđ āđāļāđāđāļāđāļāļāđāļĢāđāļāļāļĢāđāđāļĨāļ·āđāļāļāļāļīāļ (<<
) āđāļāļ·āđāļāļŠāļĢāđāļēāļāļāđāļēāļāļĩāđāđāļāļĩāļĒāļāđāļāđāļēāļāļąāļāđāļĨāļāļāļēāļāļŠāļāļ
āļŠāļĢāđāļēāļāļāļąāļāļāđāļāļąāļāļŠāļģāļŦāļĢāļąāļāļāļąāļāļāļēāļĢāđāļĨāļāļāļēāļāļŠāļāļ
āđāļāļ·āđāļāđāļŦāđāļāļēāļĢāđāļāđāđāļĨāļāļāļēāļāļŠāļāļāđāļāļ āļēāļĐāļē C āļāļąāļāđāļāļāđāļĨāļ°āļĒāļ·āļāļŦāļĒāļļāđāļāļāļķāđāļ āļŠāļēāļĄāļēāļĢāļāļŠāļĢāđāļēāļāļāļąāļāļāđāļāļąāļāđāļāļāđāļāļ·āđāļāđāļŠāļāļāļŦāļĢāļ·āļāļāļĢāļ°āļĄāļ§āļĨāļāļĨāđāļĨāļāļāļēāļāļŠāļāļ
āļāļąāļ§āļāļĒāđāļēāļāļāļąāļāļāđāļāļąāļāđāļŠāļāļāđāļĨāļāļāļēāļāļŠāļāļ
#include <stdio.h>
void printBinary(int num) {
for (int i = 31; i >= 0; i--) { // āļŠāļĄāļĄāļāļīāđāļāđāļāļāļģāļāļ§āļāđāļāđāļĄ 32 āļāļīāļ
printf("%d", (num >> i) & 1);
}
printf("\n");
}
int main() {
int value = 10; // 10 āđāļāļāļēāļāļŠāļīāļ
printf("āļāļēāļāļŠāļīāļ: %d\n", value);
printf("āļāļēāļāļŠāļāļ: ");
printBinary(value); // āđāļŠāļāļāļāļĨāđāļāļāļēāļāļŠāļāļ
return 0;
}
āđāļāđāļāļāļĩāđāļāļ°āđāļĨāļ·āđāļāļāļāļīāļāđāļāļāļēāļāļāļ§āļēāļāļĩāļĨāļ°āļŦāļāļķāđāļāđāļāļ·āđāļāļāļĢāļ§āļāļŠāļāļāđāļĨāļ°āļāļīāļĄāļāđāļāđāļēāļāļāļāđāļāđāļĨāļ°āļāļīāļ
āļāđāļāļāļ§āļĢāļĢāļ°āļ§āļąāļāđāļĨāļ°āđāļāļāļāļīāļ
1. āļĢāļ°āļ§āļąāļāļāļēāļĢāļĨāđāļāļāļīāļ (Overflow)
āđāļĄāļ·āđāļāļāļģāļāļēāļĢāđāļĨāļ·āđāļāļāļāļīāļāđāļāļ āļēāļĐāļē C āļŦāļēāļāđāļāļīāļāļāļģāļāļ§āļāļāļīāļāļāļāļāļāļāļīāļāļāđāļāļĄāļđāļĨ āđāļāđāļ 32 āļŦāļĢāļ·āļ 64 āļāļīāļ āļāļēāļāđāļāļīāļāļāļĪāļāļīāļāļĢāļĢāļĄāļāļĩāđāđāļĄāđāļāļēāļāļāļīāļ āļāļķāļāļāļ§āļĢāļĢāļđāđāļāļāļēāļāļāļīāļāļāļāļāļāļāļīāļāļāđāļāļĄāļđāļĨ (int
, unsigned int
āđāļāđāļāļāđāļ)
2. āļāļēāļĢāļāļąāļāļāļēāļĢāļāļąāļ§āđāļĨāļāļĨāļ
āļāđāļēāļĨāļāļāļ°āļāļđāļāđāļāļāļāđāļ§āļĒ Two’s Complement āļāļķāđāļāđāļāđāļāļĄāļēāļāļĢāļāļēāļāđāļāļāļēāļĢāļāļąāļāđāļāđāļāļāļąāļ§āđāļĨāļāļāļīāļāļĨāļ āļāđāļāļāļĢāļ°āļ§āļąāļāđāļĄāļ·āđāļāļāđāļāļāļāļģāļāļēāļĢāđāļĨāļ·āđāļāļāļāļīāļāļŦāļĢāļ·āļāļāļģāđāļāļīāļāļāļēāļĢāļāļīāļāļāļąāļāļāļąāļ§āđāļĨāļāļĨāļ
3. āļāļ§āļēāļĄāļāđāļēāļāļāđāļēāļĒāļāļāļāđāļāđāļ
āđāļāļ·āđāļāđāļŦāđāđāļāđāļāļāđāļēāļāļāđāļēāļĒ āļāļ§āļĢāđāļŠāđāļāļāļĄāđāļĄāļāļāđāļŦāļĢāļ·āļāđāļāļĩāļĒāļāļāļąāļāļāđāļāļąāļāļāđāļ§āļĒ āđāļāļĢāļēāļ°āļāļēāļĢāļāļģāđāļāļīāļāļāļēāļĢāļāļīāļāļŦāļĢāļ·āļāļāļēāļĢāļāļģāļāļ§āļāļāļēāļāļŠāļāļāļāļēāļāđāļĄāđāļāļąāļāđāļāļāļāđāļāļāļđāđāļāđāļēāļ
4. āļ§āļīāļāļĩāļāļēāļĢāđāļāļĨāļāđāļĨāļāļāļēāļāļŠāļīāļāđāļāđāļāđāļĨāļāļāļēāļāļŠāļāļ
āļāļēāļĢāđāļāļĨāļāđāļĨāļāļāļēāļāļŠāļīāļāđāļāđāļāđāļĨāļāļāļēāļāļŠāļāļāđāļāļ āļēāļĐāļē C āđāļāđāļāļāļąāļāļĐāļ°āļāļ·āđāļāļāļēāļāļāļāļāļāļēāļĢāđāļāļĩāļĒāļāđāļāļĢāđāļāļĢāļĄ āđāļāļĒāđāļāļāļēāļ°āđāļĄāļ·āđāļāļāļģāļāļēāļāđāļāļĢāļ°āļāļąāļāļāļīāļāļŦāļĢāļ·āļāļāļēāļĢāļ§āļīāđāļāļĢāļēāļ°āļŦāđāļāđāļāļĄāļđāļĨ āļŠāđāļ§āļāļāļĩāđāļāļ°āđāļāļ°āļāļģāļāļąāđāļāļ§āļīāļāļĩāļāļēāļĢāđāļāļĨāļāđāļāļāļāļģāļāđāļ§āļĒāļĄāļ·āļāđāļĨāļ°āļāļēāļĢāđāļāđāđāļāļĢāđāļāļĢāļĄāđāļāļ·āđāļāđāļāļĨāļāļāļąāļāđāļāļĄāļąāļāļī
āļāļēāļĢāđāļāļĨāļāļāđāļ§āļĒāļĄāļ·āļ
āļāļąāđāļāļāļāļāļāļēāļĢāđāļāļĨāļāđāļĨāļāļāļēāļāļŠāļīāļāđāļāđāļāđāļĨāļāļāļēāļāļŠāļāļ:
- āļŦāļēāļĢāļāđāļ§āļĒ 2: āļāļģāļāđāļēāļāļēāļāļŠāļīāļāļĄāļēāļŦāļēāļĢāļāđāļ§āļĒ 2 āđāļĨāđāļ§āļāļāđāļĻāļĐ
- āļāļģāļāđāļģ: āļāļģāļāļĨāļŦāļēāļĢāđāļāļŦāļēāļĢāļāđāļ§āļĒ 2 āļāđāļāđāļāļāļāļāļ§āđāļēāļāļ°āđāļāđāļāļĨāļŦāļēāļĢāđāļāđāļ 0
- āđāļĢāļĩāļĒāļāđāļĻāļĐāļāļĨāļąāļāļāđāļēāļ: āļāļģāđāļĻāļĐāļāļąāđāļāļŦāļĄāļāļĄāļēāđāļĢāļĩāļĒāļāļāļēāļāļĨāđāļēāļāļāļķāđāļāļāļ
āļāļąāļ§āļāļĒāđāļēāļ: āđāļāļĨāļāđāļĨāļāļāļēāļāļŠāļīāļ â13â āđāļāđāļāđāļĨāļāļāļēāļāļŠāļāļ
- 13 ÷ 2 = 6 āđāļĻāļĐ 1
- 6 ÷ 2 = 3 āđāļĻāļĐ 0
- 3 ÷ 2 = 1 āđāļĻāļĐ 1
- 1 ÷ 2 = 0 āđāļĻāļĐ 1
āļāļĨāļĨāļąāļāļāđ: 1101 (āļāļēāļāļŠāļāļ)
āđāļāļĢāđāļāļĢāļĄ C āļŠāļģāļŦāļĢāļąāļāđāļāļĨāļāļāļēāļāļŠāļīāļāđāļāđāļāļāļēāļāļŠāļāļ
āļāļąāļ§āļāļĒāđāļēāļāđāļāļĢāđāļāļĢāļĄāļ āļēāļĐāļē C āļŠāļģāļŦāļĢāļąāļāđāļāļĨāļāđāļĨāļāļāļēāļāļŠāļīāļāđāļāđāļāļāļēāļāļŠāļāļāđāļĨāļ°āđāļŠāļāļāļāļĨ:
#include <stdio.h>
void decimalToBinary(int num) {
int binary[32]; // āļĢāļāļāļĢāļąāļāļŠāļđāļāļŠāļļāļ 32 āļāļīāļ
int index = 0;
// āđāļāļĨāļāđāļāđāļāļāļēāļāļŠāļāļ
while (num > 0) {
binary[index] = num % 2; // āđāļāđāļāđāļĻāļĐ
num = num / 2; // āļāļąāļāđāļāļāļāļĨāļŦāļēāļĢ
index++;
}
// āđāļŠāļāļāļāļĨāļĒāđāļāļāļĨāļģāļāļąāļ
printf("āļāļēāļāļŠāļāļ: ");
for (int i = index - 1; i >= 0; i--) {
printf("%d", binary[i]);
}
printf("\n");
}
int main() {
int value;
printf("āļāđāļāļāđāļĨāļāļāļēāļāļŠāļīāļ: ");
scanf("%d", &value);
decimalToBinary(value);
return 0;
}
āļāļąāļ§āļāļĒāđāļēāļāļāļĨāļĨāļąāļāļāđ:
āļāļīāļāļāļļāļ: 13
āđāļāļēāļāđāļāļļāļ: āļāļēāļāļŠāļāļ: 1101
āļāļēāļĢāđāļāđāļāļīāļāđāļāļ·āđāļāđāļāļĨāļāļāļĒāđāļēāļāļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļ
āļŠāļēāļĄāļēāļĢāļāđāļāđāļāļēāļĢāļāļģāđāļāļīāļāļāļēāļĢāļāļīāļāđāļāļ·āđāļāđāļŠāļāļāđāļĨāļāļāļēāļāļŠāļāļāđāļāđāļāļĒāđāļēāļāļĢāļ§āļāđāļĢāđāļ§ āđāļāđāļāļāđāļēāļāļĨāđāļēāļāđāļāđāļāļāļąāļ§āļāļĒāđāļēāļāļāļēāļĢāđāļāđāļāļēāļĢāđāļĨāļ·āđāļāļāļāļīāļāđāļāļāļēāļāļāļ§āļē:
#include <stdio.h>
void printBinaryUsingBitwise(int num) {
printf("āļāļēāļāļŠāļāļ: ");
for (int i = 31; i >= 0; i--) {
printf("%d", (num >> i) & 1);
}
printf("\n");
}
int main() {
int value;
printf("āļāđāļāļāđāļĨāļāļāļēāļāļŠāļīāļ: ");
scanf("%d", &value);
printBinaryUsingBitwise(value);
return 0;
}
āļāļąāļ§āļāļĒāđāļēāļāļāļĨāļĨāļąāļāļāđ:
āļāļīāļāļāļļāļ: 13
āđāļāļēāļāđāļāļļāļ: āļāļēāļāļŠāļāļ: 00000000000000000000000000001101
āļāļąāļ§āļāļĒāđāļēāļāļāļēāļĢāđāļāđāļāļēāļāļāļĢāļīāļāļāļāļāļāļēāļĢāđāļāļĨāļāđāļāđāļāļāļēāļāļŠāļāļ
āļāļēāļĢāļāļąāļāļāļēāļĢāđāļāļĨāđāļ
āļāļēāļĢāđāļāļĨāļāđāļĨāļāļāļēāļāļŠāļīāļāđāļāđāļāļāļēāļāļŠāļāļāļāđāļ§āļĒāđāļŦāđāļāļąāļāļāļēāļĢāđāļāļĨāđāļāđāļāđāļāđāļēāļĒāļāļķāđāļ āđāļāļĒāđāļāđāļĨāļ°āļāļīāļāļŠāļēāļĄāļēāļĢāļāđāļāļāļŠāļāļēāļāļ° āđāļāļīāļ/āļāļīāļ āđāļāđ
āļāļēāļĢāđāļāļĩāļĒāļāđāļāļĢāđāļāļĢāļĄāđāļāļĢāļ·āļāļāđāļēāļĒ
āđāļāļāļēāļĢāļāļģāļāļ§āļ IP Address āđāļĨāļ° Subnet Mask āļāļ°āđāļāđāļāļēāļĢāđāļāļĨāļāđāļāđāļāđāļĨāļāļāļēāļāļŠāļāļāļāđāļāļĒāļāļĢāļąāđāļ
āļāđāļāļāļ§āļĢāļĢāļ°āļ§āļąāļ
- āļāļāļēāļāļāđāļāļĄāļđāļĨ:
int
āđāļāļĒāļāļāļāļīāļāļ°āļĄāļĩ 32 āļāļīāļ āļŦāļēāļāļāđāļāļāļāļēāļĢāđāļāđāļāļāđāļēāļāļĩāđāđāļŦāļāđāļāļ§āđāļē āļāļ§āļĢāđāļāđlong
āļŦāļĢāļ·āļlong long
- āļāđāļēāļĨāļ: āđāļĄāļ·āđāļāļāļģāļāļēāļāļāļąāļāļāļģāļāļ§āļāđāļāđāļĄāļĄāļĩāđāļāļĢāļ·āđāļāļāļŦāļĄāļēāļĒ āļāđāļāļāļĢāļ°āļ§āļąāļāđāļĢāļ·āđāļāļ Twoâs Complement
5. āļ§āļīāļāļĩāļāļēāļĢāđāļāļĨāļāđāļĨāļāļāļēāļāļŠāļāļāđāļāđāļāđāļĨāļāļāļēāļāļŠāļīāļ
āļāļēāļĢāđāļāļĨāļāđāļĨāļāļāļēāļāļŠāļāļāđāļāđāļāđāļĨāļāļāļēāļāļŠāļīāļāđāļāļ āļēāļĐāļē C āđāļāđāļāļāļąāļāļĐāļ°āļŠāļģāļāļąāļāđāļāļāļēāļĢāļāļāļāđāļāļāđāļāļĢāđāļāļĢāļĄāđāļĨāļ°āļāļąāļĨāļāļāļĢāļīāļāļķāļĄ āļŠāđāļ§āļāļāļĩāđāļāļ°āđāļāļ°āļāļģāļ§āļīāļāļĩāļāļēāļĢāļāļģāļāļ§āļāļāđāļ§āļĒāļĄāļ·āļāđāļĨāļ°āļāļąāļ§āļāļĒāđāļēāļāļāļēāļĢāđāļāļĩāļĒāļāđāļāļĢāđāļāļĢāļĄ C āđāļāļ·āđāļāļāļģāļāļēāļĢāđāļāļĨāļ
āļāļēāļĢāđāļāļĨāļāļāđāļ§āļĒāļĄāļ·āļ
āļŦāļĨāļąāļāļāļēāļĢāļāļ·āđāļāļāļēāļāļāļāļāļāļēāļĢāđāļāļĨāļāļāļ·āļ āļāļģāļāđāļēāļāļāļāđāļāđāļĨāļ°āļāļīāļāļāļđāļāļāļąāļ 2 āļĒāļāļāļģāļĨāļąāļāļāļēāļĄāļāļģāđāļŦāļāđāļ āđāļĨāđāļ§āļāļģāļĄāļēāļāļ§āļāļāļąāļ
āļāļąāđāļāļāļāļāļāļēāļĢāđāļāļĨāļ:
- āđāļĢāļīāđāļĄāļāļēāļāļāļīāļāļāļ§āļēāļŠāļļāļ (Least Significant Bit)
- āļāļđāļāļāļīāļāļāļąāđāļāļāđāļ§āļĒ 2 āļĒāļāļāļģāļĨāļąāļāļāļēāļĄāļāļģāđāļŦāļāđāļ
- āļĢāļ§āļĄāļāđāļēāļāļāļāļāļīāļāļāļąāđāļāļŦāļĄāļ
āļāļąāļ§āļāļĒāđāļēāļ: āđāļāļĨāļāđāļĨāļāļāļēāļāļŠāļāļ â1101â āđāļāđāļāđāļĨāļāļāļēāļāļŠāļīāļ
- āļāļīāļāļāļ§āļēāļŠāļļāļ (1): (1 à 2^0 = 1)
- āļāļīāļāļāļĩāđ 2 āļāļēāļāļāļ§āļē (0): (0 Ã 2^1 = 0)
- āļāļīāļāļāļĩāđ 3 āļāļēāļāļāļ§āļē (1): (1 Ã 2^2 = 4)
- āļāļīāļāļāđāļēāļĒāļŠāļļāļ (1): (1 à 2^3 = 8)
āļāļĨāļĨāļąāļāļāđ: (8 + 4 + 0 + 1 = 13)
āđāļāļĢāđāļāļĢāļĄ C āļŠāļģāļŦāļĢāļąāļāđāļāļĨāļāđāļĨāļāļāļēāļāļŠāļāļāđāļāđāļāđāļĨāļāļāļēāļāļŠāļīāļ
āļāļąāļ§āļāļĒāđāļēāļāđāļāļĢāđāļāļĢāļĄāļāļĩāđāļĢāļąāļāđāļĨāļāļāļēāļāļŠāļāļāđāļāļĢāļđāļāđāļāļāļŠāļāļĢāļīāļāđāļĨāđāļ§āđāļāļĨāļāđāļāđāļāđāļĨāļāļāļēāļāļŠāļīāļ:
#include <stdio.h>
#include <string.h>
#include <math.h>
int binaryToDecimal(const char *binary) {
int decimal = 0;
int length = strlen(binary);
for (int i = 0; i < length; i++) {
if (binary[i] == '1') {
decimal += pow(2, length - 1 - i);
}
}
return decimal;
}
int main() {
char binary[33]; // āļĢāļāļāļĢāļąāļāđāļĨāļāļāļēāļāļŠāļāļāļŠāļđāļāļŠāļļāļ 32 āļāļīāļ
printf("āļāđāļāļāđāļĨāļāļāļēāļāļŠāļāļ: ");
scanf("%s", binary);
int decimal = binaryToDecimal(binary);
printf("āļāļēāļāļŠāļīāļ: %d\n", decimal);
return 0;
}
āļāļąāļ§āļāļĒāđāļēāļāļāļĨāļĨāļąāļāļāđ:
āļāļīāļāļāļļāļ: 1101
āđāļāļēāļāđāļāļļāļ: āļāļēāļāļŠāļīāļ: 13
āļāļēāļĢāđāļāļĨāļāļāđāļ§āļĒāļāļēāļĢāļāļģāđāļāļīāļāļāļēāļĢāļāļīāļ
āļŦāļēāļāđāļĨāļāļāļēāļāļŠāļāļāļāļđāļāđāļāđāļāđāļāđāļāļāļąāļ§āđāļĨāļāļāļģāļāļ§āļāđāļāđāļĄ āļŠāļēāļĄāļēāļĢāļāđāļāđāļāļēāļĢāļāļģāđāļāļīāļāļāļēāļĢāļāļīāļāđāļāļ·āđāļāđāļāļĨāļāđāļāđāļāļĒāđāļēāļāļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļ
#include <stdio.h>
int binaryToDecimalUsingBitwise(int binary) {
int decimal = 0;
int base = 1; // āđāļĢāļīāđāļĄāļāļēāļ 2^0
while (binary > 0) {
int lastBit = binary % 10;
decimal += lastBit * base;
base *= 2;
binary /= 10;
}
return decimal;
}
int main() {
int binary;
printf("āļāđāļāļāđāļĨāļāļāļēāļāļŠāļāļ (āļāļąāļ§āđāļĨāļ): ");
scanf("%d", &binary);
int decimal = binaryToDecimalUsingBitwise(binary);
printf("āļāļēāļāļŠāļīāļ: %d\n", decimal);
return 0;
}
āļāļąāļ§āļāļĒāđāļēāļāļāļĨāļĨāļąāļāļāđ:
āļāļīāļāļāļļāļ: 1101
āđāļāļēāļāđāļāļļāļ: āļāļēāļāļŠāļīāļ: 13
āļāđāļāļāļ§āļĢāļĢāļ°āļ§āļąāļ
- āļĢāļđāļāđāļāļāļāđāļāļĄāļđāļĨāļāļĩāđāļĢāļąāļāđāļāđāļē
- āļŦāļēāļāđāļāđāļāļŠāļāļĢāļīāļ āļāđāļāļāļāļĢāļ°āļĄāļ§āļĨāļāļĨāļāļĩāļĨāļ°āļāļąāļ§āļāļąāļāļĐāļĢ
- āļŦāļēāļāđāļāđāļāļāļąāļ§āđāļĨāļāļāļģāļāļ§āļāđāļāđāļĄ āđāļāđāļāļēāļĢāļŦāļēāļĢāđāļĨāļ°āļŦāļēāļĢāđāļāļēāđāļĻāļĐ
- āļāļēāļĢāļĨāđāļāļāđāļē (Overflow)
- āļāđāļēāļāđāļāļĄāļđāļĨāļĒāļēāļ§āđāļāļīāļāļāļ§āđāļēāļāļĩāđāļāļāļīāļāļāđāļāļĄāļđāļĨ
int
āđāļāđāļāđāļāđ āđāļŦāđāđāļāđlong
āļŦāļĢāļ·āļlong long
- āļāļēāļĢāļāļąāļāļāļēāļĢāļāđāļēāļĨāļ
- āļŦāļēāļāđāļāđāļāđāļĨāļāļāļēāļāļŠāļāļāđāļāļ Twoâs Complement āļāđāļāļāđāļāđāļ§āļīāļāļĩāđāļāļĨāļāļāļīāđāļĻāļĐ
6. āļ§āļīāļāļĩāļāļēāļĢāđāļŠāļāļāđāļĨāļāļāļēāļāļŠāļāļāđāļāļ āļēāļĐāļē C
āļāļēāļĢāđāļŠāļāļāđāļĨāļāļāļēāļāļŠāļāļāđāļāļ āļēāļĐāļē C āļĄāļĩāļāļĢāļ°āđāļĒāļāļāđāļŠāļģāļŦāļĢāļąāļāļāļēāļĢāļāļĩāļāļąāļāļŦāļĢāļ·āļāļāļēāļĢāļāļģāđāļŦāđāļāđāļāļĄāļđāļĨāđāļāđāļēāđāļāđāļāđāļāđāļēāļĒāļāļķāđāļ āļāļĒāđāļēāļāđāļĢāļāđāļāļēāļĄ āđāļĨāļāļĢāļēāļĢāļĩāļĄāļēāļāļĢāļāļēāļāļāļāļ C āđāļĄāđāļĄāļĩāļāļąāļāļāđāļāļąāļāļŠāļģāļŦāļĢāļąāļāļāļīāļĄāļāđāđāļĨāļāļāļēāļāļŠāļāļāđāļāļĒāļāļĢāļ āļāļķāļāļāđāļāļāđāļāđāđāļāļāļāļīāļāļāļīāđāļĻāļĐ āļŠāđāļ§āļāļāļĩāđāļāļ°āđāļāļ°āļāļģāļāļąāđāļāđāļāđāļ§āļīāļāļĩāļāļ·āđāļāļāļēāļāļāđāļ§āļĒ printf āđāļāļāļāļāļķāļāļāļēāļĢāđāļāļĩāļĒāļāļāļąāļāļāđāļāļąāļāđāļāļāđāļāļ·āđāļāļāļēāļĢāđāļŠāļāļāļāļĨāļāļĩāđāļĒāļ·āļāļŦāļĒāļļāđāļ
āļāļēāļĢāđāļāđ printf āđāļāļ·āđāļāđāļŠāļāļāđāļĨāļāļāļēāļāļŠāļāļ
āļ§āļīāļāļĩāļāļĩāđ 1: āđāļāđāļāļēāļĢāđāļĨāļ·āđāļāļāļāļīāļāđāļāļ·āđāļāļāļīāļĄāļāđāļāļĩāļĨāļ°āļāļīāļ
āļŠāļēāļĄāļēāļĢāļāđāļāđāļāļēāļĢāđāļĨāļ·āđāļāļāļāļīāļāđāļāļ·āđāļāļāļķāļāļāļīāļāļāļāļāļĄāļēāļāļīāļĄāļāđāļāļĩāļĨāļ°āļāļąāļ§āļāļĒāđāļēāļāđāļāđāļāđāļāļāđāļēāļāļĨāđāļēāļ:
#include <stdio.h>
void printBinary(int num) {
for (int i = 31; i >= 0; i--) { // āļŠāļĄāļĄāļāļīāđāļāđāļāļāļģāļāļ§āļāđāļāđāļĄ 32 āļāļīāļ
printf("%d", (num >> i) & 1);
}
printf("\n");
}
int main() {
int value;
printf("āļāđāļāļāļāļģāļāļ§āļāđāļāđāļĄ: ");
scanf("%d", &value);
printf("āļāļēāļāļŠāļāļ: ");
printBinary(value);
return 0;
}
āļāļąāļ§āļāļĒāđāļēāļāļāļĨāļĨāļąāļāļāđ:
āļāļīāļāļāļļāļ: 13
āđāļāļēāļāđāļāļļāļ: āļāļēāļāļŠāļāļ: 00000000000000000000000000001101
āļ§āļīāļāļĩāļāļĩāđāļāļ°āđāļŠāļāļāļāļīāļāļāļąāđāļāļŦāļĄāļāļāļēāļĄāļāļāļēāļāļāļāļīāļāļāđāļāļĄāļđāļĨ āđāļāđāļ 32 āļāļīāļ
āļāļēāļĢāļŠāļĢāđāļēāļāļāļąāļāļāđāļāļąāļāđāļŠāļāļāđāļĨāļāļāļēāļāļŠāļāļāđāļāļāļĒāļ·āļāļŦāļĒāļļāđāļ
āļ§āļīāļāļĩāļāļĩāđ 2: āđāļŠāļāļāđāļāļāļēāļ°āļāļīāļāļāļĩāđāđāļāđāļāļēāļāļāļĢāļīāļ
āļŠāļēāļĄāļēāļĢāļāļāļģāđāļŦāđāļāļĨāļĨāļąāļāļāđāļŠāļąāđāļāļĨāļāđāļāļĒāļāļąāļāļĻāļđāļāļĒāđāļāļģāļŦāļāđāļēāļāļāļ:
#include <stdio.h>
void printBinaryCompact(int num) {
int leading = 1; // āđāļāđāđāļāļ·āđāļāļāļąāļāļĻāļđāļāļĒāđāļāļģāļŦāļāđāļē
for (int i = 31; i >= 0; i--) {
int bit = (num >> i) & 1;
if (bit == 1) leading = 0;
if (!leading || i == 0) printf("%d", bit);
}
printf("\n");
}
int main() {
int value;
printf("āļāđāļāļāļāļģāļāļ§āļāđāļāđāļĄ: ");
scanf("%d", &value);
printf("āļāļēāļāļŠāļāļ: ");
printBinaryCompact(value);
return 0;
}
āļāļąāļ§āļāļĒāđāļēāļāļāļĨāļĨāļąāļāļāđ:
āļāļīāļāļāļļāļ: 13
āđāļāļēāļāđāļāļļāļ: āļāļēāļāļŠāļāļ: 1101
āļāļēāļĢāđāļŠāļāļāļāļĨāđāļāļĢāļđāļāđāļāļāļŠāļāļĢāļīāļ
āļ§āļīāļāļĩāļāļĩāđ 3: āđāļāļĨāļāđāļāđāļāļŠāļāļĢāļīāļāđāļĨāđāļ§āđāļāđāļāļēāļ
āļŠāļēāļĄāļēāļĢāļāļŠāļĢāđāļēāļāļŠāļāļĢāļīāļāļāļāļāđāļĨāļāļāļēāļāļŠāļāļāđāļāļ·āđāļāļŠāđāļāļāđāļāđāļŦāđāļāļąāļāļāđāļāļąāļāļāļ·āđāļāļŦāļĢāļ·āļāđāļāđāđāļāļĢāļĩāļĒāļāđāļāļĩāļĒāļ:
#include <stdio.h>
#include <string.h>
void getBinaryString(int num, char *binary) {
int index = 0;
for (int i = 31; i >= 0; i--) {
binary[index++] = ((num >> i) & 1) + '0';
}
binary[index] = '\0';
}
int main() {
int value;
char binary[33];
printf("āļāđāļāļāļāļģāļāļ§āļāđāļāđāļĄ: ");
scanf("%d", &value);
getBinaryString(value, binary);
printf("āļāļēāļāļŠāļāļ: %s\n", binary);
return 0;
}
āļāļąāļ§āļāļĒāđāļēāļāļāļĨāļĨāļąāļāļāđ:
āļāļīāļāļāļļāļ: 13
āđāļāļēāļāđāļāļļāļ: āļāļēāļāļŠāļāļ: 00000000000000000000000000001101
āļāļēāļĢāļāļąāļāļĢāļđāļāđāļāļāđāļŦāđāļāđāļēāļāļāđāļēāļĒāļāļķāđāļ
āļŠāļēāļĄāļēāļĢāļāļāļąāļāļāļĨāļļāđāļĄāļāļīāļāđāļāļ·āđāļāđāļŦāđāļāđāļēāļāļāđāļēāļĒāļāļķāđāļ āđāļāđāļ āđāļāđāļāđāļāđāļ 4 āļāļīāļāļāđāļāļāļĨāļļāđāļĄ:
#include <stdio.h>
void printBinaryWithGroups(int num) {
for (int i = 31; i >= 0; i--) {
printf("%d", (num >> i) & 1);
if (i % 4 == 0 && i != 0) printf(" ");
}
printf("\n");
}
int main() {
int value;
printf("āļāđāļāļāļāļģāļāļ§āļāđāļāđāļĄ: ");
scanf("%d", &value);
printf("āļāļēāļāļŠāļāļ: ");
printBinaryWithGroups(value);
return 0;
}
āļāļąāļ§āļāļĒāđāļēāļāļāļĨāļĨāļąāļāļāđ:
āļāļīāļāļāļļāļ: 13
āđāļāļēāļāđāļāļļāļ: āļāļēāļāļŠāļāļ: 0000 0000 0000 0000 0000 0000 0000 1101
āļāđāļāļāļ§āļĢāļĢāļ°āļ§āļąāļ
- āļāđāļēāļĨāļ
- āļāļģāļāļ§āļāđāļāđāļĄāļĄāļĩāđāļāļĢāļ·āđāļāļāļŦāļĄāļēāļĒāļāļ°āđāļŠāļāļāļāļĨāđāļāļĢāļđāļāđāļāļ Twoâs Complement
- āļāļ§āļēāļĄāļāļ§āđāļēāļāļāļāļāļāļīāļ
- āļāļ§āļĢāļĢāļđāđāļāļģāļāļ§āļāļāļīāļāļāļāļāļāļāļīāļāļāđāļāļĄāļđāļĨ āđāļāđāļ
int
,long
,unsigned int
- āļāļ§āļēāļĄāļāđāļēāļāļāđāļēāļĒ
- āđāļāļīāđāļĄāļāđāļāļāļ§āđāļēāļāļŦāļĢāļ·āļāļāļēāļĢāļāļąāļāļāļĨāļļāđāļĄāļāļīāļāđāļāļ·āđāļāđāļŦāđāļāļđāļāđāļēāļĒāļāļķāđāļ
7. āđāļĢāļĩāļĒāļāļĢāļđāđāļāļēāļĢāļāļģāđāļāļīāļāļāļēāļĢāļāļīāļāļāļąāđāļāđāļāđāļāļ·āđāļāļāļēāļāļāļāļāļķāļāļāļąāđāļāļāļĢāļ°āļĒāļļāļāļāđ
āđāļāļ āļēāļĐāļē C āļāļēāļĢāļāļģāđāļāļīāļāļāļēāļĢāļāļīāļ (Bitwise Operations) āļāđāļ§āļĒāđāļŦāđāļŠāļēāļĄāļēāļĢāļāļāļąāļāļāļēāļĢāļāđāļāļĄāļđāļĨāđāļāđāļāļĒāđāļēāļāļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļ āđāļŦāļĄāļēāļ°āļāļĒāđāļēāļāļĒāļīāđāļāļŠāļģāļŦāļĢāļąāļāļāļēāļĢāđāļāļĩāļĒāļāđāļāļĢāđāļāļĢāļĄāļĢāļ°āļāļąāļāļāđāļģāđāļĨāļ°āļāļēāļāļāļĩāđāļāđāļāļāļāļēāļĢāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļāļŠāļđāļ āļŠāđāļ§āļāļāļĩāđāļāļ°āļāļāļīāļāļēāļĒāļāļąāđāļāđāļāđāļāļ·āđāļāļāļēāļāļāļāļāļāļēāļĢāļāļģāđāļāļīāļāļāļēāļĢāļāļīāļāđāļāļāļāļāļķāļāļāļąāļ§āļāļĒāđāļēāļāļāļēāļĢāļāļĢāļ°āļĒāļļāļāļāđāđāļāđāļāļĢāļīāļ
āļāļ·āđāļāļāļēāļāļāļāļāļāļēāļĢāļāļģāđāļāļīāļāļāļēāļĢāļāļīāļ
āļāļēāļĢāļāļģāđāļāļīāļāļāļēāļĢāļāļīāļāļāļ·āļāļāļēāļĢāļāļąāļāļāļēāļĢāļāđāļāļĄāļđāļĨāđāļāļĢāļ°āļāļąāļāļāļīāļāļāļāļāļāļąāļ§āđāļĨāļāļāļģāļāļ§āļāđāļāđāļĄāđāļāļĒāļāļĢāļ āļāđāļēāļāļĨāđāļēāļāļāļĩāđāđāļāđāļāđāļāđāļāļāđāļĢāđāļāļāļĢāđāļŦāļĨāļąāļāđāļāļ āļēāļĐāļē C āđāļĨāļ°āļŦāļāđāļēāļāļĩāđāļāļāļāđāļāđāļĨāļ°āļāļąāļ§
āđāļāđāļāļāđāļĢāđāļāļāļĢāđāļŦāļĨāļąāļāđāļĨāļ°āļāļēāļĢāļāļģāļāļēāļ
āđāļāđāļāļāđāļĢāđāļāļāļĢāđ | āļāļ·āđāļ | āļāļąāļ§āļāļĒāđāļēāļ (A = 5, B = 3) | āļāļĨāļĨāļąāļāļāđ |
---|---|---|---|
& | AND | A & B (0101 & 0011) | 0001 |
| | OR | A | B (0101 | 0011) | 0111 |
^ | XOR | A ^ B (0101 ^ 0011) | 0110 |
~ | NOT (Complement) | ~A (~0101) | 1010 |
<< | āđāļĨāļ·āđāļāļāļāļīāļāđāļāļāļēāļāļāđāļēāļĒ | A << 1 (0101 << 1) | 1010 |
>> | āđāļĨāļ·āđāļāļāļāļīāļāđāļāļāļēāļāļāļ§āļē | A >> 1 (0101 >> 1) | 0010 |
āļāļąāļ§āļāļĒāđāļēāļāļāļāļāđāļāđāļĨāļ°āđāļāđāļāļāđāļĢāđāļāļāļĢāđ
AND (&
): āļāļ·āļāļāđāļē 1 āļāđāļāđāļāđāļĄāļ·āđāļāļāļīāļāļāļāļāļāļąāđāļāļŠāļāļāļāđāļēāļāđāļāđāļ 1
#include <stdio.h>
int main() {
int a = 5; // 0101
int b = 3; // 0011
printf("A & B = %d\n", a & b); // āļāļĨāļĨāļąāļāļāđ: 1 (0001)
return 0;
}
OR (|
): āļāļ·āļāļāđāļē 1 āļāđāļēāļāļīāļāđāļāļāļīāļāļŦāļāļķāđāļāđāļāđāļ 1
printf("A | B = %d\n", a | b); // āļāļĨāļĨāļąāļāļāđ: 7 (0111)
XOR (^
): āļāļ·āļāļāđāļē 1 āļāđāļēāļāļīāļāļāļąāđāļāļŠāļāļāļāđāļēāļāļāļąāļ
printf("A ^ B = %d\n", a ^ b); // āļāļĨāļĨāļąāļāļāđ: 6 (0110)
NOT (~
): āļāļĨāļąāļāļāđāļēāļāļīāļāļāļąāđāļāļŦāļĄāļ
printf("~A = %d\n", ~a); // āļāļĨāļĨāļąāļāļāđ: -6 (āđāļāļĢāļđāļāđāļāļ Two's Complement)
āđāļĨāļ·āđāļāļāļāļīāļāļāđāļēāļĒ (<<
): āļāļđāļāļāđāļēāļāđāļ§āļĒ 2
printf("A << 1 = %d\n", a << 1); // āļāļĨāļĨāļąāļāļāđ: 10 (1010)
āđāļĨāļ·āđāļāļāļāļīāļāļāļ§āļē (>>
): āļŦāļēāļĢāļāđāļēāļāđāļ§āļĒ 2 (āļāļąāļāđāļĻāļĐāļĨāļ)
printf("A >> 1 = %d\n", a >> 1); // āļāļĨāļĨāļąāļāļāđ: 2 (0010)
āļāļēāļĢāļāļĢāļ°āļĒāļļāļāļāđāđāļāđāļāļēāļĢāļāļģāđāļāļīāļāļāļēāļĢāļāļīāļ
āļāļēāļĢāļāļģāđāļāļīāļāļāļēāļĢāļāļīāļāļāļđāļāļāļģāļĄāļēāđāļāđāđāļāļāļēāļĢāļāļąāļāļāļēāļĢāļāđāļāļĄāļđāļĨāļāļĒāđāļēāļāļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļ āđāļāđāļ āļāļēāļĢāļāļąāļāļāļēāļĢāđāļāļĨāđāļ āļāļēāļĢāļāļĩāļāļāļąāļāļāđāļāļĄāļđāļĨ āđāļĨāļ°āļāļēāļĢāļāļ§āļāļāļļāļĄāļŪāļēāļĢāđāļāđāļ§āļĢāđ
1. āļāļēāļĢāļāļąāļāļāļēāļĢāđāļāļĨāđāļāļāđāļ§āļĒ Bit Mask
Bit Mask āļāđāļ§āļĒāđāļŦāđāļŠāļēāļĄāļēāļĢāļāđāļāđāļāļŦāļĨāļēāļĒāļŠāļāļēāļāļ°āđāļ§āđāđāļāļāļąāļ§āđāļāļĢāđāļāļĩāļĒāļ§
#include <stdio.h>
#define FLAG_A 0x01 // 0001
#define FLAG_B 0x02 // 0010
#define FLAG_C 0x04 // 0100
#define FLAG_D 0x08 // 1000
int main() {
int flags = 0;
// āļāļąāđāļāļāđāļēāđāļāļĨāđāļ
flags |= FLAG_A;
flags |= FLAG_C;
printf("Flags: %d\n", flags); // āļāļĨāļĨāļąāļāļāđ: 5 (0101)
// āļāļĢāļ§āļāļŠāļāļāđāļāļĨāđāļ
if (flags & FLAG_A) printf("FLAG_A is ON\n");
if (flags & FLAG_B) printf("FLAG_B is ON\n");
// āļāļīāļāđāļāļĨāđāļ
flags &= ~FLAG_A;
printf("Flags: %d\n", flags); // āļāļĨāļĨāļąāļāļāđ: 4 (0100)
return 0;
}
2. āļāļēāļĢāļŠāļĨāļąāļāļāļīāļ (Toggle)
#include <stdio.h>
int main() {
int value = 5; // 0101
int toggleBit = 1; // 0001
value ^= toggleBit; // āļŠāļĨāļąāļāļāļīāļāļāļĩāđāļāļģāđāļŦāļāđāļ 1
printf("Value after toggle: %d\n", value);
return 0;
}
3. āļāļēāļĢāļāļĩāļāļāļąāļāđāļĨāļ°āļāļđāđāļāļ·āļāļāđāļāļĄāļđāļĨ
#include <stdio.h>
int main() {
int compressed = 0;
compressed |= (3 << 4);
compressed |= 5;
printf("Compressed: %d\n", compressed);
int upper = (compressed >> 4) & 0xF;
int lower = compressed & 0xF;
printf("Upper: %d, Lower: %d\n", upper, lower);
return 0;
}
āļāđāļāļāļ§āļĢāļĢāļ°āļ§āļąāļ
- āļāļģāļāļ§āļāđāļāđāļĄāļĄāļĩāđāļāļĢāļ·āđāļāļāļŦāļĄāļēāļĒ: āļĢāļ°āļ§āļąāļāļāļēāļĢāļāļģāļāļēāļāļāļąāļāļāđāļēāļĨāļāđāļāļ·āđāļāļāļāļēāļāđāļāđāļĢāļđāļāđāļāļ Two’s Complement
- āļāļ§āļēāļĄāļāđāļēāļāļāđāļēāļĒ: āđāļāđāļāļāļĄāđāļĄāļāļāđāļŦāļĢāļ·āļāļĄāļēāđāļāļĢāđāļāļ·āđāļāđāļŦāđāđāļāđāļāđāļāđāļēāđāļāļāđāļēāļĒāļāļķāđāļ
- āļāļēāļĢāļĨāđāļāļāļīāļ: āļāļēāļĢāđāļĨāļ·āđāļāļāļāļīāļāđāļāļīāļāļāļāļēāļāļāļīāļāļāļāļāļāļāļīāļāļāđāļāļĄāļđāļĨāļāļ°āļāļģāđāļŦāđāđāļāļīāļāļāļĪāļāļīāļāļĢāļĢāļĄāđāļĄāđāļāļēāļāļāļīāļ
8. āļāļēāļĢāđāļāđāļāļēāļāļāļĢāļīāļ: āļāļąāļ§āļāļĒāđāļēāļāļāļēāļĢāļāļĢāļ°āļĒāļļāļāļāđāđāļĨāļāļāļēāļāļŠāļāļ
āđāļāļ āļēāļĐāļē C āđāļĢāļēāļŠāļēāļĄāļēāļĢāļāļāļģāđāļĨāļāļāļēāļāļŠāļāļāđāļĨāļ°āļāļēāļĢāļāļģāđāļāļīāļāļāļēāļĢāļāļīāļāļĄāļēāļāļĢāļ°āļĒāļļāļāļāđāđāļāđāđāļāļŠāļāļēāļāļāļēāļĢāļāđāļāļĢāļīāļāđāļāļ·āđāļāļāļąāļāļāļēāļĢāļāđāļāļĄāļđāļĨāļāļĒāđāļēāļāļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļ āđāļāļāļāļīāļāđāļŦāļĨāđāļēāļāļĩāđāļĄāļĩāļāļ§āļēāļĄāļŠāļģāļāļąāļāđāļāļāļēāļāđāļāļĢāđāļāļĢāļĄāļĄāļīāđāļāļĢāļ°āļāļąāļāļāđāļģāđāļĨāļ°āļāļēāļĢāļāļąāļāļāļēāđāļāļāļāļĨāļīāđāļāļāļąāļāļāļĩāđāļāđāļāļāļāļēāļĢāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļāļŠāļđāļ āļāđāļāđāļāļāļĩāđāđāļāđāļāļāļąāļ§āļāļĒāđāļēāļāļāļēāļĢāļāļĢāļ°āļĒāļļāļāļāđāđāļāđāļāļēāļ
1. āļāļēāļĢāļŠāļĢāđāļēāļāļāļąāļ§āļāļąāļāđāļāļāļāļēāļāļŠāļāļ (Binary Counter)
āļāļąāļ§āļāļąāļāđāļāļāļāļēāļāļŠāļāļāđāļāđāđāļāļāļāđāļēāļāđāļ§āļĒāļāļīāļāđāļĨāļ°āđāļāļīāđāļĄāļāđāļēāļāđāļ§āļĒāļāļēāļĢāļāļģāđāļāļīāļāļāļēāļĢāļāļīāļ āđāļŦāļĄāļēāļ°āļŠāļģāļŦāļĢāļąāļāļāļēāļĢāļ§āļāļĨāļđāļāļŦāļĢāļ·āļāļāļēāļĢāļāļąāļāļāļēāļĢāļŠāļāļēāļāļ°
#include <stdio.h>
void binaryCounter(int limit) {
for (int i = 0; i <= limit; i++) {
printf("āļāļēāļāļŠāļīāļ: %d, āļāļēāļāļŠāļāļ: ", i);
for (int j = 31; j >= 0; j--) {
printf("%d", (i >> j) & 1);
}
printf("\n");
}
}
int main() {
int count = 10;
printf("āļāļąāļāļāļēāļāļŠāļāļāļāļąāđāļāđāļāđ 0 āļāļķāļ %d:\n", count);
binaryCounter(count);
return 0;
}
āļāļąāļ§āļāļĒāđāļēāļāļāļĨāļĨāļąāļāļāđ:
āļāļēāļāļŠāļīāļ: 0, āļāļēāļāļŠāļāļ: 00000000000000000000000000000000
āļāļēāļāļŠāļīāļ: 1, āļāļēāļāļŠāļāļ: 00000000000000000000000000000001
...
āļāļēāļāļŠāļīāļ: 10, āļāļēāļāļŠāļāļ: 00000000000000000000000000001010
2. āļāļēāļĢāļāļąāļāļāļēāļĢāļŦāļāđāļ§āļĒāļāļ§āļēāļĄāļāļģāļāļĒāđāļēāļāļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļāļāđāļ§āļĒ Bit Field
Bit Field āļāđāļ§āļĒāđāļŦāđāļŠāļēāļĄāļēāļĢāļāļāļĩāļāļāļąāļāļāđāļāļĄāļđāļĨāđāļĨāļ°āļāļąāļāļāļēāļĢāļŦāļĨāļēāļĒāļŠāļāļēāļāļ°āļ āļēāļĒāđāļāļŦāļāđāļ§āļĒāļāļ§āļēāļĄāļāļģāđāļāļĩāļĒāļāđāļĨāđāļāļāđāļāļĒ
#include <stdio.h>
// āđāļāļĢāļāļŠāļĢāđāļēāļāļāļĩāđāđāļāđ Bit Field
struct Flags {
unsigned int flagA : 1; // 1 āļāļīāļ
unsigned int flagB : 1; // 1 āļāļīāļ
unsigned int flagC : 1; // 1 āļāļīāļ
unsigned int reserved : 5; // āļŠāļģāļĢāļāļ 5 āļāļīāļ
};
int main() {
struct Flags flags = {0};
// āļāļąāđāļāļāđāļēāđāļāļĨāđāļ
flags.flagA = 1;
flags.flagB = 0;
flags.flagC = 1;
printf("FlagA: %d, FlagB: %d, FlagC: %d\n", flags.flagA, flags.flagB, flags.flagC);
return 0;
}
āļāļąāļ§āļāļĒāđāļēāļāļāļĨāļĨāļąāļāļāđ:
FlagA: 1, FlagB: 0, FlagC: 1
3. āļāļēāļĢāļāļĢāļ§āļāļŠāļāļāļāļīāļāđāļāļāļēāļ°āļāļģāđāļŦāļāđāļ
āļāļēāļĢāļāļĢāļ§āļāļŠāļāļāļ§āđāļēāļāļīāļāļāļģāđāļŦāļāđāļāđāļāļāļđāļāļāļąāđāļāļāđāļēāļāļĒāļđāđāļŦāļĢāļ·āļāđāļĄāđ āļĄāļĩāļāļĢāļ°āđāļĒāļāļāđāđāļāļāļēāļāļāļĢāļ§āļāļŠāļāļāļŠāļāļēāļāļ°āđāļĨāļ°āļāļēāļĢāļāļĩāļāļąāļ
#include <stdio.h>
int isBitSet(int value, int position) {
return (value & (1 << position)) != 0;
}
int main() {
int value = 42; // āļāļēāļāļŠāļāļ: 101010
int position = 3;
if (isBitSet(value, position)) {
printf("āļāļīāļ %d āļāļđāļāļāļąāđāļāļāđāļēāđāļ %d\n", position, value);
} else {
printf("āļāļīāļ %d āđāļĄāđāļāļđāļāļāļąāđāļāļāđāļēāđāļ %d\n", position, value);
}
return 0;
}
āļāļąāļ§āļāļĒāđāļēāļāļāļĨāļĨāļąāļāļāđ:
āļāļīāļ 3 āļāļđāļāļāļąāđāļāļāđāļēāđāļ 42
4. āļāļēāļĢāļāļģāļāļ§āļ Subnet Mask āļāļāļ IP Address
āđāļāļāļēāļĢāđāļāļĩāļĒāļāđāļāļĢāđāļāļĢāļĄāđāļāļĢāļ·āļāļāđāļēāļĒ āļāļēāļĢāļāļģāļāļ§āļ Subnet Mask āļĄāļąāļāđāļāđāļāļēāļĢāļāļģāđāļāļīāļāļāļēāļĢāļāļīāļ
#include <stdio.h>
unsigned int generateSubnetMask(int prefix) {
return (0xFFFFFFFF << (32 - prefix));
}
void printBinary(unsigned int value) {
for (int i = 31; i >= 0; i--) {
printf("%d", (value >> i) & 1);
if (i % 8 == 0 && i != 0) printf(" ");
}
printf("\n");
}
int main() {
int prefix = 24;
unsigned int mask = generateSubnetMask(prefix);
printf("Subnet Mask (Prefix %d):\n", prefix);
printBinary(mask);
return 0;
}
āļāļąāļ§āļāļĒāđāļēāļāļāļĨāļĨāļąāļāļāđ:
Subnet Mask (Prefix 24):
11111111 11111111 11111111 00000000
āļāđāļāļāļ§āļĢāļĢāļ°āļ§āļąāļ
- āļāđāļāļāļģāļāļąāļāļāļāļāļŦāļāđāļ§āļĒāļāļ§āļēāļĄāļāļģ: āļĢāļ°āļ§āļąāļāļāļĒāđāļēāđāļŦāđāļāļēāļĢāļāļģāđāļāļīāļāļāļēāļĢāļāļīāļāđāļāļīāļāļāļāļēāļāļāļāļīāļāļāđāļāļĄāļđāļĨ
- āļāļ§āļēāļĄāļāđāļēāļāļāđāļēāļĒāļāļāļāđāļāđāļ: āđāļŠāđāļāļāļĄāđāļĄāļāļāđāđāļĨāļ°āļāļąāđāļāļāļ·āđāļāļāļąāļ§āđāļāļĢāđāļŦāđāļŠāļ·āđāļāļāļ§āļēāļĄāļŦāļĄāļēāļĒ
- āļāļģāļāļ§āļāđāļāđāļĄāļĄāļĩāđāļāļĢāļ·āđāļāļāļŦāļĄāļēāļĒ: āļāđāļāļāļāļīāļāļēāļĢāļāļēāļāļīāļāđāļāļĢāļ·āđāļāļāļŦāļĄāļēāļĒāđāļĄāļ·āđāļāļāļģāļāļēāļāļāļąāļāļāđāļēāļĨāļ
9. āļāļģāļāļēāļĄāļāļĩāđāļāļāļāđāļāļĒ (FAQ): āđāļāļĩāđāļĒāļ§āļāļąāļāđāļĨāļāļāļēāļāļŠāļāļāđāļāļ āļēāļĐāļē C
āđāļĄāļ·āđāļāđāļāđāļāļēāļāđāļĨāļāļāļēāļāļŠāļāļāđāļāļ āļēāļĐāļē C āļāļđāđāđāļĢāļīāđāļĄāļāđāļāļāļāļāļķāļāļĢāļ°āļāļąāļāļāļĨāļēāļāļĄāļąāļāļāļ°āļĄāļĩāļāļģāļāļēāļĄāđāļāļīāļāļāļķāđāļ āļŠāđāļ§āļāļāļĩāđāļāļ°āļĢāļ§āļāļĢāļ§āļĄāļāļģāļāļēāļĄāļāļĩāđāļāļāļāđāļāļĒāļāļĢāđāļāļĄāļāļģāļāļāļāđāļĨāļ°āļ§āļīāļāļĩāđāļāđāđāļ
Q1: āđāļāļ āļēāļĐāļē C āļŠāļēāļĄāļēāļĢāļāđāļāļĩāļĒāļāđāļĨāļāļāļēāļāļŠāļāļāđāļāļĒāļāļĢāļāđāļāđāļŦāļĢāļ·āļāđāļĄāđ?
āļāļģāļāļāļ:
āļĄāļēāļāļĢāļāļēāļāļāļāļāļ āļēāļĐāļē C āđāļĄāđāļĢāļāļāļĢāļąāļāļāļēāļĢāđāļāļĩāļĒāļāđāļĨāļāļāļēāļāļŠāļāļāđāļāļĒāļāļĢāļ āđāļāđāļŠāļēāļĄāļēāļĢāļāđāļāļāđāļāđāļāđāļ§āļĒāļ§āļīāļāļĩāļāļ·āđāļ
āļ§āļīāļāļĩāđāļāđ:
- āđāļāđāđāļĨāļāļāļēāļāļŠāļīāļāļŦāļ
āđāļĨāļāļāļēāļāļŠāļāļāđāļĨāļ°āļāļēāļāļŠāļīāļāļŦāļāļĄāļĩāļāļ§āļēāļĄāļŠāļąāļĄāļāļąāļāļāđāļāļąāļ āđāļāļĒ 1 āļŦāļĨāļąāļāļāļēāļāļŠāļīāļāļŦāļāđāļāđāļēāļāļąāļ 4 āļāļīāļāļāļāļāđāļĨāļāļāļēāļāļŠāļāļ āđāļāđāļ0b1010
(āļāļēāļāļŠāļāļ) āđāļāļĩāļĒāļāđāļāđāļ0xA
(āļāļēāļāļŠāļīāļāļŦāļ) - āđāļāđāļāļēāļĢāđāļĨāļ·āđāļāļāļāļīāļ
āļŠāļēāļĄāļēāļĢāļāļŠāļĢāđāļēāļāļāđāļēāļāļēāļāļŠāļāļāđāļāļĒāļāļēāļĢāđāļāđāđāļāđāļāļāđāļĢāđāļāļāļĢāđāđāļĨāļ·āđāļāļāļāļīāļ
int value = (1 << 3) | (1 << 1); // 1010 āđāļāļāļēāļāļŠāļāļ
- āđāļāđāđāļĄāđāļāļĢāļŦāļĢāļ·āļāļāļąāļāļāđāļāļąāļāļāđāļ§āļĒ
āđāļāļ·āđāļāđāļŦāđāđāļāđāļāļāđāļēāļāļāđāļēāļĒāļāļķāđāļ
Q2: āļāđāļāļāļĢāļ°āļ§āļąāļāļāļ°āđāļĢāļāđāļēāļāđāļĄāļ·āđāļāđāļāđāđāļĨāļāļāļēāļāļŠāļāļ?
āļāļģāļāļāļ:
āļāļ§āļĢāļāļīāļāļēāļĢāļāļēāđāļĢāļ·āđāļāļāļāđāļāđāļāļāļĩāđ:
- āļāļāļāđāļāļāļāļāļāļāļāļīāļāļāđāļāļĄāļđāļĨ
āđāļāđāļint
āļāļāļāļī 32 āļāļīāļ āļĄāļĩāļāđāļēāļāļąāđāļāđāļāđ -2,147,483,648 āļāļķāļ 2,147,483,647 - āļāļģāļāļ§āļāđāļāđāļĄāļĄāļĩāđāļāļĢāļ·āđāļāļāļŦāļĄāļēāļĒāđāļĨāļ°āđāļĄāđāļĄāļĩāđāļāļĢāļ·āđāļāļāļŦāļĄāļēāļĒ
āļāļģāļāļ§āļāđāļāđāļĄāļĄāļĩāđāļāļĢāļ·āđāļāļāļŦāļĄāļēāļĒāļāļ°āđāļāđāļĢāļđāļāđāļāļ Two’s Complement - āļāļēāļĢāđāļĨāļ·āđāļāļāļāļīāļāđāļāļīāļāļāļāļēāļ
āļāļēāļĢāđāļĨāļ·āđāļāļāļāļīāļāđāļāļīāļāļāļ§āļēāļĄāļĒāļēāļ§āļāļīāļāļāļāļāļāļāļīāļāļāđāļāļĄāļđāļĨāļāļ°āļāļģāđāļŦāđāđāļāļīāļāļāļĪāļāļīāļāļĢāļĢāļĄāđāļĄāđāļāļēāļāļāļīāļ
Q3: āļāļ°āđāļāđāđāļāļāļīāļāđāļāļĩāļĒāļāļāļēāļāļāļģāđāļŦāļāđāļāđāļāđāļāļĒāđāļēāļāđāļĢ?
āļāļģāļāļāļ:
āđāļāđāļāļēāļĢāļāļģāđāļāļīāļāļāļēāļĢāļāļīāļāļāļąāļāļāļĩāđ:
- āļāļąāđāļāļāļīāļ (āđāļāđāļ 1)
value |= (1 << n);
- āļĨāļāļāļīāļ (āđāļāđāļ 0)
value &= ~(1 << n);
- āļŠāļĨāļąāļāļāļīāļ (Toggle)
value ^= (1 << n);
Q4: āļāļģāđāļĄāļāļēāļĢāļāļģāđāļāļīāļāļāļēāļĢāļāļīāļāļāļąāļāļāđāļēāļĨāļāļāļķāļāđāļāđāļāļĨāļĨāļąāļāļāđāļāđāļēāļāđāļ?
āļāļģāļāļāļ:
āđāļāļĢāļēāļ°āļ āļēāļĐāļē C āđāļāđāļĢāļđāļāđāļāļ Two’s Complement āđāļāļāļēāļĢāđāļāđāļāļāđāļēāļĨāļ āļāļģāđāļŦāđāļāļīāļāđāļāļĢāļ·āđāļāļāļŦāļĄāļēāļĒāļāļđāļāļāļģāļĄāļēāļāļīāļāļēāļĢāļāļēāļāđāļ§āļĒ
āļ§āļīāļāļĩāđāļāđ:
- āđāļāļĨāļāđāļāđāļāļāļģāļāļ§āļāđāļāđāļĄāđāļĄāđāļĄāļĩāđāļāļĢāļ·āđāļāļāļŦāļĄāļēāļĒāļāđāļāļāļāļģāļāļēāļ
unsigned int uValue = (unsigned int)value;
Q5: āļŠāļēāļĄāļēāļĢāļāļŠāļĢāđāļēāļāļāļąāļāļāđāļāļąāļāđāļāļĨāļāđāļĨāļāļāļēāļāļŠāļīāļ â āđāļĨāļāļāļēāļāļŠāļāļ āđāļāđāļāđāļēāļĒāļŦāļĢāļ·āļāđāļĄāđ?
āļāļģāļāļāļ:
āļŠāļēāļĄāļēāļĢāļāļāļģāđāļāđāļāđāļēāļĒ āļāļąāļ§āļāļĒāđāļēāļ:
āđāļāļĨāļāļāļēāļāļŠāļīāļāđāļāđāļāļāļēāļāļŠāļāļ
void decimalToBinary(int num) {
for (int i = 31; i >= 0; i--) {
printf("%d", (num >> i) & 1);
}
printf("\n");
}
āđāļāļĨāļāļāļēāļāļŠāļāļāđāļāđāļāļāļēāļāļŠāļīāļ
#include <stdio.h>
#include <math.h>
int binaryToDecimal(const char *binary) {
int decimal = 0;
int length = strlen(binary);
for (int i = 0; i < length; i++) {
if (binary[i] == '1') {
decimal += pow(2, length - 1 - i);
}
}
return decimal;
}
Q6: āļāđāļāļāļĩāļāļāļāļāļēāļĢāđāļāđ Bit Field āļāļ·āļāļāļ°āđāļĢ?
āļāļģāļāļāļ:
- āļāļĢāļ°āļŦāļĒāļąāļāļŦāļāđāļ§āļĒāļāļ§āļēāļĄāļāļģ: āļāļąāļāļāļēāļĢāļāđāļāļĄāļđāļĨāđāļāđāļāļāļīāļ
- āđāļāđāļāļāđāļēāļāļāđāļēāļĒāļāļķāđāļ: āļāļąāļāđāļāļāļāļ§āđāļēāļāļēāļĢāđāļāđāđāļāđāļāļāđāļĢāđāļāļāļĢāđāļāļīāļāđāļāļĒāļāļĢāļ
Q7: āļ§āļīāļāļĩāļāļēāļĢāļāļĩāļāļąāļāđāļāđāļāļāļĩāđāđāļāđāļāļēāļĢāļāļģāđāļāļīāļāļāļēāļĢāļāļīāļāđāļŦāđāļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļ?
āļāļģāļāļāļ:
- āļāļīāļĄāļāđāđāļĨāļāļāļēāļāļŠāļāļāļāļāļāļĄāļēāļāļĢāļ§āļāļŠāļāļ
void printBinary(int value) {
for (int i = 31; i >= 0; i--) {
printf("%d", (value >> i) & 1);
}
printf("\n");
}
- āđāļāđ Debugger: āđāļāļ·āđāļāļāļĢāļ§āļāļŠāļāļāļāđāļēāļāļīāļāđāļĨāļ°āļŦāļāđāļ§āļĒāļāļ§āļēāļĄāļāļģ
10. āļŠāļĢāļļāļāđāļĨāļ°āļāļąāđāļāļāļāļāļāļąāļāđāļ
āļāļēāļĢāđāļāđāļēāđāļāļ§āļīāļāļĩāļāļąāļāļāļēāļĢāđāļĨāļāļāļēāļāļŠāļāļāđāļāļ āļēāļĐāļē C āđāļāđāļāļŠāļīāđāļāļŠāļģāļāļąāļāļŠāļģāļŦāļĢāļąāļāļāļēāļĢāļŠāļĢāđāļēāļāđāļāļĢāđāļāļĢāļĄāļāļĩāđāļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļāđāļĨāļ°āļāļēāļĢāļāļąāļāļāļēāļĢāļāđāļāļĄāļđāļĨāđāļāļĢāļ°āļāļąāļāļāđāļģ āļāļāļāļ§āļēāļĄāļāļĩāđāđāļāđāļāļāļīāļāļēāļĒāļāļąāđāļāđāļāđāļāļ·āđāļāļāļēāļāļāļāļāđāļĨāļāļāļēāļāļŠāļāļ āļ§āļīāļāļĩāļāļēāļĢāđāļŠāļāļāđāļāļ āļēāļĐāļē C āļāļēāļĢāđāļāļĨāļāļĢāļ°āļŦāļ§āđāļēāļāđāļĨāļāļāļēāļāļŠāļīāļāđāļĨāļ°āļāļēāļāļŠāļāļ āđāļāļāļāļāļķāļāļāļēāļĢāļāļĢāļ°āļĒāļļāļāļāđāđāļāđāļāļēāļĢāļāļģāđāļāļīāļāļāļēāļĢāļāļīāļāđāļāļŠāļāļēāļāļāļēāļĢāļāđāļāļĢāļīāļ
āļŠāļĢāļļāļāđāļāļ·āđāļāļŦāļē
- āđāļāđāļēāđāļāļāļ·āđāļāļāļēāļāļāļāļāđāļĨāļāļāļēāļāļŠāļāļ
- āļāļāļĄāļāļīāļ§āđāļāļāļĢāđāđāļāđāđāļĨāļāļāļēāļāļŠāļāļāđāļāļāļēāļĢāļāļĢāļ°āļĄāļ§āļĨāļāļĨāļāđāļāļĄāļđāļĨ āļāļēāļĢāđāļāđāļēāđāļāļāļ§āļēāļĄāđāļāļāļāđāļēāļāļāļąāļāđāļĨāļāļāļēāļāļŠāļīāļāđāļĨāļ°āļāļēāļāļŠāļīāļāļŦāļāđāļāđāļāļŠāļīāđāļāļŠāļģāļāļąāļ
- āļāļēāļĢāļāļąāļāļāļēāļĢāđāļĨāļāļāļēāļāļŠāļāļāđāļāļ āļēāļĐāļē C
- āđāļĄāđāđāļĄāđāļĄāļĩāļĨāļīāđāļāļāļĢāļąāļĨāļāļēāļāļŠāļāļāđāļāļĒāļāļĢāļ āđāļāđāļŠāļēāļĄāļēāļĢāļāđāļāđāļāļēāļĢāđāļĨāļ·āđāļāļāļāļīāļāļŦāļĢāļ·āļāļāļąāļāļāđāļāļąāļāļāđāļ§āļĒāđāļāđ
- āļāļēāļĢāđāļāļĨāļāļĢāļ°āļŦāļ§āđāļēāļāđāļĨāļāļāļēāļāļŠāļīāļāđāļĨāļ°āļāļēāļāļŠāļāļ
- āđāļĢāļĩāļĒāļāļĢāļđāđāļ§āļīāļāļĩāđāļāļĨāļāļāļąāđāļāđāļāļāļāļģāļāđāļ§āļĒāļĄāļ·āļāđāļĨāļ°āļāđāļ§āļĒāđāļāđāļ āđāļāļ·āđāļāđāļŦāđāđāļāļĩāļĒāļāđāļāļĢāđāļāļĢāļĄāđāļāđāļāļĒāđāļēāļāļĒāļ·āļāļŦāļĒāļļāđāļ
- āļāļ·āđāļāļāļēāļāđāļĨāļ°āļāļēāļĢāļāļĢāļ°āļĒāļļāļāļāđāđāļāđāļāļēāļĢāļāļģāđāļāļīāļāļāļēāļĢāļāļīāļ
- āđāļāđāļēāđāļāđāļāđāļāļāđāļĢāđāļāļāļĢāđ AND, OR, XOR, NOT, Shift āđāļĨāļ°āļāļēāļĢāļāļģāđāļāđāļāđāļāļĢāļīāļ āđāļāđāļ āļāļēāļĢāļāļąāļāļāļēāļĢāđāļāļĨāđāļāđāļĨāļ°āļāļēāļĢāļāļĩāļāļāļąāļāļāđāļāļĄāļđāļĨ
- āļāļąāļ§āļāļĒāđāļēāļāļāļēāļĢāđāļāđāļāļēāļāļāļĢāļīāļ
- āđāļāđāļ āļāļąāļ§āļāļąāļāļāļēāļāļŠāļāļ, Bit Field, āļāļēāļĢāļāļģāļāļ§āļ Subnet Mask āđāļāđāļāļĢāļ·āļāļāđāļēāļĒ
āļŦāļąāļ§āļāđāļāļāļĩāđāļāļ§āļĢāđāļĢāļĩāļĒāļāļāđāļ
āļŦāļĨāļąāļāļāļēāļāđāļāđāļēāđāļāļāļēāļĢāļāļąāļāļāļēāļĢāđāļĨāļāļāļēāļāļŠāļāļāđāļāļ āļēāļĐāļē C āđāļĨāđāļ§ āļŠāļēāļĄāļēāļĢāļāļāļąāļāļāļēāļāļąāļāļĐāļ°āļāđāļāđāļāļāļĩāđ:
- āļāļēāļĢāđāļāđ Pointer āļĢāđāļ§āļĄāļāļąāļāļāļēāļĢāļāļģāđāļāļīāļāļāļēāļĢāļāļīāļ
- āļāļēāļĢāļāļāļāđāļāļāļāļąāļĨāļāļāļĢāļīāļāļķāļĄ: āđāļāđāđāļāļāļāļīāļ Bit Manipulation āđāļāļ·āđāļāđāļāļīāđāļĄāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļ
- āļāļēāļĢāđāļāļĩāļĒāļāđāļāļĢāđāļāļĢāļĄāđāļāļĢāļ·āļāļāđāļēāļĒ: āļāļģāļāļ§āļ IP āđāļĨāļ°āļāļąāļāļāļēāļĢāļāđāļāļĄāļđāļĨāđāļāļĢāļ°āļāļąāļāđāļāđāļāđāļāđāļ
- āļāļēāļĢāđāļāļĩāļĒāļāđāļāļĢāđāļāļĢāļĄ Embedded: āļāļ§āļāļāļļāļĄāļŪāļēāļĢāđāļāđāļ§āļĢāđāđāļāļĒāļāļĢāļ
- āļāļēāļĢāļāļĢāļ°āļĒāļļāļāļāđāđāļ C++: āđāļāđāļāļĨāļēāļŠāđāļĨāļ°āđāļāļĄāđāļāļĨāļāđāļāļ·āđāļāļāļģāļāļēāļāļāļąāļāļāļīāļāļāļąāđāļāļŠāļđāļ
āļāđāļāđāļŠāļāļāđāļāļ°āļŠāļģāļŦāļĢāļąāļāļāļąāđāļāļāļāļāļāļąāļāđāļ
- āļĨāļāļĄāļ·āļāđāļāļĩāļĒāļāđāļāđāļāļāļĢāļīāļ
āļāļģāļāļąāļ§āļāļĒāđāļēāļāđāļāļāļāļāļ§āļēāļĄāđāļāļāļĢāļąāļāđāļāđāđāļāđāļāļĢāđāļāļāļāđāļāļāļāļāļļāļ - āļāļķāļāđāļāđāđāļāļāļĒāđ
āđāļāđāđāļ§āđāļāđāļāļāđāđāļāđāļ LeetCode āļŦāļĢāļ·āļ AtCoder āđāļāļ·āđāļāļāļķāļāđāļāļāļĒāđāđāļāļĩāđāļĒāļ§āļāļąāļāļāļēāļĢāļāļģāđāļāļīāļāļāļēāļĢāļāļīāļ - āļŠāļĢāđāļēāļāđāļāļĢāđāļāļāļāđāļāļāļāļāļāđāļāļ
āđāļāđāļ āđāļāļĢāļ·āđāļāļāļĄāļ·āļāđāļāļĨāļāđāļĨāļāļāļēāļ, āļāļąāļ§āļāļąāļāļāļīāļ, āļŦāļĢāļ·āļāļĢāļ°āļāļāļāļąāļāļāļēāļĢāđāļāļĨāđāļ
āļŦāļ§āļąāļāļ§āđāļēāļāļāļāļ§āļēāļĄāļāļĩāđāļāļ°āļāđāļ§āļĒāđāļŦāđāļāļļāļāđāļāđāļēāđāļāļāļēāļĢāđāļāđāđāļĨāļāļāļēāļāļŠāļāļāđāļĨāļ°āļāļēāļĢāļāļģāđāļāļīāļāļāļēāļĢāļāļīāļāđāļāļ āļēāļĐāļē C āđāļāđāļāļĩāļĒāļīāđāļāļāļķāđāļ āđāļĨāļ°āļŠāļēāļĄāļēāļĢāļāļāļģāđāļāļāļĢāļ°āļĒāļļāļāļāđāđāļāđāđāļāļāļēāļĢāļāļąāļāļāļēāđāļāļĢāđāļāļĢāļĄāļāļāļāļāļļāļāļāđāļāđāļ