ಸೋನಾಫ್ ಬೇಸಿಕ್‌ಗಾಗಿ ವಿಷುಯಲ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್

ಸೋನಾಫ್ ಬೇಸಿಕ್‌ಗಾಗಿ ವಿಷುಯಲ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್
ಅಗ್ಗದ ಚೀನೀ ಸಾಧನದಿಂದ ಪ್ರೋಗ್ರಾಮೆಬಲ್ ಲಾಜಿಕ್ ನಿಯಂತ್ರಕವನ್ನು ಹೇಗೆ ರಚಿಸುವುದು ಎಂಬುದರ ಕುರಿತು ಲೇಖನ. ಅಂತಹ ಸಾಧನವು ಮನೆಯ ಯಾಂತ್ರೀಕೃತಗೊಂಡ ಮತ್ತು ಶಾಲಾ ಕಂಪ್ಯೂಟರ್ ವಿಜ್ಞಾನದಲ್ಲಿ ಪ್ರಾಯೋಗಿಕ ತರಗತಿಗಳಾಗಿ ಅದರ ಬಳಕೆಯನ್ನು ಕಂಡುಕೊಳ್ಳುತ್ತದೆ.
ಉಲ್ಲೇಖಕ್ಕಾಗಿ, ಪೂರ್ವನಿಯೋಜಿತವಾಗಿ Sonoff ಬೇಸಿಕ್ ಪ್ರೋಗ್ರಾಂ ಚೈನೀಸ್ ಕ್ಲೌಡ್ ಸೇವೆಯ ಮೂಲಕ ಮೊಬೈಲ್ ಅಪ್ಲಿಕೇಶನ್‌ನೊಂದಿಗೆ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ; ಪ್ರಸ್ತಾವಿತ ಮಾರ್ಪಾಡಿನ ನಂತರ, ಈ ಸಾಧನದೊಂದಿಗೆ ಎಲ್ಲಾ ಹೆಚ್ಚಿನ ಸಂವಹನವು ಬ್ರೌಸರ್‌ನಲ್ಲಿ ಸಾಧ್ಯವಾಗುತ್ತದೆ.

ವಿಭಾಗ I. ಸೋನಾಫ್ ಅನ್ನು MGT24 ಸೇವೆಗೆ ಸಂಪರ್ಕಿಸಲಾಗುತ್ತಿದೆ

ಹಂತ 1: ನಿಯಂತ್ರಣ ಫಲಕವನ್ನು ರಚಿಸಿ

ಸೈಟ್ನಲ್ಲಿ ನೋಂದಾಯಿಸಿ mgt24 (ಈಗಾಗಲೇ ನೋಂದಾಯಿಸದಿದ್ದರೆ) ಮತ್ತು ನಿಮ್ಮ ಖಾತೆಯನ್ನು ಬಳಸಿಕೊಂಡು ಲಾಗ್ ಇನ್ ಮಾಡಿ.
ಲಾಗಿನ್ ಮಾಡಿಸೋನಾಫ್ ಬೇಸಿಕ್‌ಗಾಗಿ ವಿಷುಯಲ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್

ಹೊಸ ಸಾಧನಕ್ಕಾಗಿ ನಿಯಂತ್ರಣ ಫಲಕವನ್ನು ರಚಿಸಲು, "+" ಬಟನ್ ಕ್ಲಿಕ್ ಮಾಡಿ.
ಫಲಕವನ್ನು ರಚಿಸುವ ಉದಾಹರಣೆಸೋನಾಫ್ ಬೇಸಿಕ್‌ಗಾಗಿ ವಿಷುಯಲ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್

ಒಮ್ಮೆ ಫಲಕವನ್ನು ರಚಿಸಿದ ನಂತರ, ಅದು ನಿಮ್ಮ ಪ್ಯಾನೆಲ್‌ಗಳ ಪಟ್ಟಿಯಲ್ಲಿ ಕಾಣಿಸುತ್ತದೆ.

ರಚಿಸಲಾದ ಪ್ಯಾನೆಲ್‌ನ "ಸೆಟಪ್" ಟ್ಯಾಬ್‌ನಲ್ಲಿ, "ಸಾಧನ ಐಡಿ" ಮತ್ತು "ಅಧಿಕಾರ ಕೀ" ಕ್ಷೇತ್ರಗಳನ್ನು ಹುಡುಕಿ; ಭವಿಷ್ಯದಲ್ಲಿ, ಸೋನಾಫ್ ಸಾಧನವನ್ನು ಹೊಂದಿಸುವಾಗ ಈ ಮಾಹಿತಿಯು ಅಗತ್ಯವಾಗಿರುತ್ತದೆ.
ಟ್ಯಾಬ್ ಉದಾಹರಣೆಸೋನಾಫ್ ಬೇಸಿಕ್‌ಗಾಗಿ ವಿಷುಯಲ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್

ಹಂತ 2. ಸಾಧನವನ್ನು ರಿಫ್ಲಾಶ್ ಮಾಡಿ

ಉಪಯುಕ್ತತೆಯನ್ನು ಬಳಸುವುದು XTCOM_UTIL ಫರ್ಮ್ವೇರ್ ಅನ್ನು ಡೌನ್ಲೋಡ್ ಮಾಡಿ PLC ಸೋನಾಫ್ ಬೇಸಿಕ್ ಸಾಧನಕ್ಕೆ, ಇದಕ್ಕಾಗಿ ನಿಮಗೆ USB-TTL ಪರಿವರ್ತಕ ಅಗತ್ಯವಿದೆ. ಇಲ್ಲಿ ಕೈಪಿಡಿ и ವೀಡಿಯೊ ಸೂಚನೆ.

ಹಂತ 3. ಸಾಧನ ಸೆಟಪ್

ಸಾಧನಕ್ಕೆ ಶಕ್ತಿಯನ್ನು ಅನ್ವಯಿಸಿ, ಎಲ್ಇಡಿ ಬೆಳಗಿದ ನಂತರ, ಬಟನ್ ಅನ್ನು ಒತ್ತಿ ಮತ್ತು ಎಲ್ಇಡಿ ನಿಯತಕಾಲಿಕವಾಗಿ ಸಮವಾಗಿ ಫ್ಲ್ಯಾಷ್ ಮಾಡಲು ಪ್ರಾರಂಭಿಸುವವರೆಗೆ ಅದನ್ನು ಒತ್ತಿಹಿಡಿಯಿರಿ.
ಈ ಕ್ಷಣದಲ್ಲಿ, "PLC Sonoff Basic" ಎಂಬ ಹೊಸ wi-fi ನೆಟ್ವರ್ಕ್ ಕಾಣಿಸಿಕೊಳ್ಳುತ್ತದೆ, ಈ ನೆಟ್ವರ್ಕ್ಗೆ ನಿಮ್ಮ ಕಂಪ್ಯೂಟರ್ ಅನ್ನು ಸಂಪರ್ಕಿಸಿ.
ಎಲ್ಇಡಿ ಸೂಚನೆಯ ವಿವರಣೆ

ಎಲ್ಇಡಿ ಸೂಚನೆ
ಸಾಧನದ ಸ್ಥಿತಿ

ಆವರ್ತಕ ಡಬಲ್ ಮಿನುಗುವಿಕೆ
ರೂಟರ್‌ಗೆ ಸಂಪರ್ಕವಿಲ್ಲ

ನಿರಂತರವಾಗಿ ಹೊಳೆಯುತ್ತದೆ
ರೂಟರ್ನೊಂದಿಗೆ ಸಂಪರ್ಕವನ್ನು ಸ್ಥಾಪಿಸಲಾಗಿದೆ

ಆವರ್ತಕ ಏಕರೂಪದ ಮಿನುಗುವಿಕೆ
wi-fi ಪ್ರವೇಶ ಬಿಂದು ಮೋಡ್

ನಂದಿಸಿದ
ವಿದ್ಯುತ್ ಪೂರೈಕೆ ಇಲ್ಲ

ಇಂಟರ್ನೆಟ್ ಬ್ರೌಸರ್ ತೆರೆಯಿರಿ ಮತ್ತು ವಿಳಾಸ ಪಟ್ಟಿಯಲ್ಲಿ "192.168.4.1" ಪಠ್ಯವನ್ನು ನಮೂದಿಸಿ, ಸಾಧನದ ನೆಟ್ವರ್ಕ್ ಸೆಟ್ಟಿಂಗ್ಗಳ ಸೆಟ್ಟಿಂಗ್ಗಳ ಪುಟಕ್ಕೆ ಹೋಗಿ.

ಕೆಳಗಿನಂತೆ ಕ್ಷೇತ್ರಗಳನ್ನು ಭರ್ತಿ ಮಾಡಿ:

  • “ನೆಟ್‌ವರ್ಕ್ ಹೆಸರು” ಮತ್ತು “ಪಾಸ್‌ವರ್ಡ್” (ಸಾಧನವನ್ನು ನಿಮ್ಮ ಮನೆಯ ವೈ-ಫೈ ರೂಟರ್‌ಗೆ ಲಿಂಕ್ ಮಾಡಲು).
  • "ಸಾಧನ ID" ಮತ್ತು "ಅಧಿಕಾರ ಕೀ" (MGT24 ಸೇವೆಯಲ್ಲಿ ಸಾಧನವನ್ನು ದೃಢೀಕರಿಸಲು).

ಸಾಧನ ನೆಟ್ವರ್ಕ್ ನಿಯತಾಂಕಗಳನ್ನು ಹೊಂದಿಸುವ ಉದಾಹರಣೆಸೋನಾಫ್ ಬೇಸಿಕ್‌ಗಾಗಿ ವಿಷುಯಲ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್

ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ಉಳಿಸಿ ಮತ್ತು ಸಾಧನವನ್ನು ರೀಬೂಟ್ ಮಾಡಿ.
ಇದು ವೀಡಿಯೊ ಸೂಚನೆ.

ಹಂತ 4. ಸಂವೇದಕಗಳನ್ನು ಸಂಪರ್ಕಿಸಲಾಗುತ್ತಿದೆ (ಐಚ್ಛಿಕ)

ಪ್ರಸ್ತುತ ಫರ್ಮ್‌ವೇರ್ ನಾಲ್ಕು ds18b20 ತಾಪಮಾನ ಸಂವೇದಕಗಳನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ. ಇಲ್ಲಿ ವೀಡಿಯೊ ಸೂಚನೆ ಸಂವೇದಕಗಳ ಅನುಸ್ಥಾಪನೆಗೆ. ಸ್ಪಷ್ಟವಾಗಿ, ಈ ಹಂತವು ಅತ್ಯಂತ ಕಷ್ಟಕರವಾಗಿರುತ್ತದೆ, ಏಕೆಂದರೆ ಇದಕ್ಕೆ ನೇರವಾದ ತೋಳುಗಳು ಮತ್ತು ಬೆಸುಗೆ ಹಾಕುವ ಕಬ್ಬಿಣದ ಅಗತ್ಯವಿರುತ್ತದೆ.

ವಿಭಾಗ II. ವಿಷುಯಲ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್

ಹಂತ 1: ಸ್ಕ್ರಿಪ್ಟ್‌ಗಳನ್ನು ರಚಿಸಿ

ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಪರಿಸರವಾಗಿ ಬಳಸಲಾಗುತ್ತದೆ ನಿರ್ಬಂಧದಿಂದ, ಪರಿಸರವು ಕಲಿಯಲು ಸುಲಭವಾಗಿದೆ, ಆದ್ದರಿಂದ ಸರಳ ಸ್ಕ್ರಿಪ್ಟ್‌ಗಳನ್ನು ರಚಿಸಲು ನೀವು ಪ್ರೋಗ್ರಾಮರ್ ಆಗಬೇಕಾಗಿಲ್ಲ.

ಸಾಧನದ ನಿಯತಾಂಕಗಳನ್ನು ಬರೆಯಲು ಮತ್ತು ಓದಲು ನಾನು ವಿಶೇಷ ಬ್ಲಾಕ್ಗಳನ್ನು ಸೇರಿಸಿದೆ. ಯಾವುದೇ ಪ್ಯಾರಾಮೀಟರ್ ಅನ್ನು ಹೆಸರಿನಿಂದ ಪ್ರವೇಶಿಸಬಹುದು. ರಿಮೋಟ್ ಸಾಧನಗಳ ನಿಯತಾಂಕಗಳಿಗಾಗಿ, ಸಂಯುಕ್ತ ಹೆಸರುಗಳನ್ನು ಬಳಸಲಾಗುತ್ತದೆ: "ಪ್ಯಾರಾಮೀಟರ್ @ ಡಿವೈಸ್".
ಆಯ್ಕೆಗಳ ಡ್ರಾಪ್‌ಡೌನ್ ಪಟ್ಟಿಸೋನಾಫ್ ಬೇಸಿಕ್‌ಗಾಗಿ ವಿಷುಯಲ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್

ಲೋಡ್ (1Hz) ಆನ್ ಮತ್ತು ಆಫ್ ಆವರ್ತಕ ಸ್ವಿಚಿಂಗ್‌ಗೆ ಉದಾಹರಣೆ ಸನ್ನಿವೇಶ:
ಸೋನಾಫ್ ಬೇಸಿಕ್‌ಗಾಗಿ ವಿಷುಯಲ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್

ಎರಡು ಪ್ರತ್ಯೇಕ ಸಾಧನಗಳ ಕಾರ್ಯಾಚರಣೆಯನ್ನು ಸಿಂಕ್ರೊನೈಸ್ ಮಾಡುವ ಸ್ಕ್ರಿಪ್ಟ್‌ನ ಉದಾಹರಣೆ. ಅವುಗಳೆಂದರೆ, ಗುರಿ ಸಾಧನದ ರಿಲೇ ರಿಮೋಟ್ ಸಾಧನದ ರಿಲೇ ಕಾರ್ಯಾಚರಣೆಯನ್ನು ಪುನರಾವರ್ತಿಸುತ್ತದೆ.
ಸೋನಾಫ್ ಬೇಸಿಕ್‌ಗಾಗಿ ವಿಷುಯಲ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್

ಥರ್ಮೋಸ್ಟಾಟ್ಗೆ ಸನ್ನಿವೇಶ (ಹಿಸ್ಟರೆಸಿಸ್ ಇಲ್ಲದೆ):
ಸೋನಾಫ್ ಬೇಸಿಕ್‌ಗಾಗಿ ವಿಷುಯಲ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್

ಹೆಚ್ಚು ಸಂಕೀರ್ಣವಾದ ಸ್ಕ್ರಿಪ್ಟ್‌ಗಳನ್ನು ರಚಿಸಲು, ನೀವು ಅಸ್ಥಿರಗಳು, ಲೂಪ್‌ಗಳು, ಕಾರ್ಯಗಳು (ವಾದಗಳೊಂದಿಗೆ) ಮತ್ತು ಇತರ ರಚನೆಗಳನ್ನು ಬಳಸಬಹುದು. ನಾನು ಇಲ್ಲಿ ಎಲ್ಲವನ್ನೂ ವಿವರವಾಗಿ ವಿವರಿಸುವುದಿಲ್ಲ; ನೆಟ್‌ನಲ್ಲಿ ಈಗಾಗಲೇ ಸಾಕಷ್ಟು ಇದೆ. ಬ್ಲಾಕ್ಲಿ ಬಗ್ಗೆ ಶೈಕ್ಷಣಿಕ ವಸ್ತು.

ಹಂತ 2: ಸ್ಕ್ರಿಪ್ಟ್‌ಗಳ ಕ್ರಮ

ಸ್ಕ್ರಿಪ್ಟ್ ನಿರಂತರವಾಗಿ ಚಲಿಸುತ್ತದೆ, ಮತ್ತು ಅದರ ಅಂತ್ಯವನ್ನು ತಲುಪಿದ ತಕ್ಷಣ, ಅದು ಮತ್ತೆ ಪ್ರಾರಂಭವಾಗುತ್ತದೆ. ಈ ಸಂದರ್ಭದಲ್ಲಿ, ಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ತಾತ್ಕಾಲಿಕವಾಗಿ ವಿರಾಮಗೊಳಿಸಬಹುದಾದ ಎರಡು ಬ್ಲಾಕ್ಗಳಿವೆ, "ವಿಳಂಬ" ಮತ್ತು "ವಿರಾಮ".
"ವಿಳಂಬ" ಬ್ಲಾಕ್ ಅನ್ನು ಮಿಲಿಸೆಕೆಂಡ್ ಅಥವಾ ಮೈಕ್ರೋಸೆಕೆಂಡ್ ವಿಳಂಬಗಳಿಗೆ ಬಳಸಲಾಗುತ್ತದೆ. ಈ ಬ್ಲಾಕ್ ಸಮಯದ ಮಧ್ಯಂತರವನ್ನು ಕಟ್ಟುನಿಟ್ಟಾಗಿ ನಿರ್ವಹಿಸುತ್ತದೆ, ಸಂಪೂರ್ಣ ಸಾಧನದ ಕಾರ್ಯಾಚರಣೆಯನ್ನು ನಿರ್ಬಂಧಿಸುತ್ತದೆ.
"ವಿರಾಮ" ಬ್ಲಾಕ್ ಅನ್ನು ಎರಡನೇ (ಅಥವಾ ಕಡಿಮೆ) ವಿಳಂಬಗಳಿಗೆ ಬಳಸಲಾಗುತ್ತದೆ, ಮತ್ತು ಇದು ಸಾಧನದಲ್ಲಿ ಇತರ ಪ್ರಕ್ರಿಯೆಗಳ ಮರಣದಂಡನೆಯನ್ನು ನಿರ್ಬಂಧಿಸುವುದಿಲ್ಲ.
ಸ್ಕ್ರಿಪ್ಟ್ ಸ್ವತಃ ಅನಂತ ಲೂಪ್ ಅನ್ನು ಹೊಂದಿದ್ದರೆ, ಅದರ ದೇಹವು "ವಿರಾಮ" ಹೊಂದಿಲ್ಲದಿದ್ದರೆ, ಇಂಟರ್ಪ್ರಿಟರ್ ಸ್ವತಂತ್ರವಾಗಿ ಸಣ್ಣ ವಿರಾಮವನ್ನು ಪ್ರಾರಂಭಿಸುತ್ತಾನೆ.
ನಿಯೋಜಿತ ಮೆಮೊರಿ ಸ್ಟ್ಯಾಕ್ ಖಾಲಿಯಾಗಿದ್ದರೆ, ಇಂಟರ್ಪ್ರಿಟರ್ ಅಂತಹ ಪವರ್ ಹಂಗ್ರಿ ಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುವುದನ್ನು ನಿಲ್ಲಿಸುತ್ತಾರೆ (ಪುನರಾವರ್ತಿತ ಕಾರ್ಯಗಳೊಂದಿಗೆ ಜಾಗರೂಕರಾಗಿರಿ).

ಹಂತ 3: ಸ್ಕ್ರಿಪ್ಟ್‌ಗಳನ್ನು ಡೀಬಗ್ ಮಾಡುವುದು

ಸಾಧನದಲ್ಲಿ ಈಗಾಗಲೇ ಲೋಡ್ ಮಾಡಲಾದ ಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ಡೀಬಗ್ ಮಾಡಲು, ನೀವು ಹಂತ ಹಂತವಾಗಿ ಪ್ರೋಗ್ರಾಂ ಟ್ರೇಸ್ ಅನ್ನು ರನ್ ಮಾಡಬಹುದು. ಸ್ಕ್ರಿಪ್ಟ್‌ನ ನಡವಳಿಕೆಯು ಲೇಖಕರ ಉದ್ದೇಶಕ್ಕಿಂತ ಭಿನ್ನವಾದಾಗ ಇದು ಅತ್ಯಂತ ಉಪಯುಕ್ತವಾಗಿದೆ. ಈ ಸಂದರ್ಭದಲ್ಲಿ, ಟ್ರೇಸಿಂಗ್ ಲೇಖಕರಿಗೆ ಸಮಸ್ಯೆಯ ಮೂಲವನ್ನು ತ್ವರಿತವಾಗಿ ಕಂಡುಹಿಡಿಯಲು ಮತ್ತು ಸ್ಕ್ರಿಪ್ಟ್‌ನಲ್ಲಿನ ದೋಷವನ್ನು ಸರಿಪಡಿಸಲು ಅನುಮತಿಸುತ್ತದೆ.

ಡೀಬಗ್ ಮೋಡ್‌ನಲ್ಲಿ ಅಪವರ್ತನೀಯವನ್ನು ಲೆಕ್ಕಾಚಾರ ಮಾಡುವ ಸನ್ನಿವೇಶ:
ಸೋನಾಫ್ ಬೇಸಿಕ್‌ಗಾಗಿ ವಿಷುಯಲ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್

ಡೀಬಗ್ ಪರಿಕರವು ತುಂಬಾ ಸರಳವಾಗಿದೆ ಮತ್ತು ಮೂರು ಮುಖ್ಯ ಬಟನ್‌ಗಳನ್ನು ಒಳಗೊಂಡಿದೆ: "ಪ್ರಾರಂಭ", "ಒಂದು ಹೆಜ್ಜೆ ಮುಂದಕ್ಕೆ" ಮತ್ತು "ನಿಲ್ಲಿಸು" ("ನಮೂದಿಸಿ" ಮತ್ತು "ನಿರ್ಗಮನ" ಡೀಬಗ್ ಮೋಡ್ ಅನ್ನು ಸಹ ನಾವು ಮರೆಯಬಾರದು). ಹಂತ-ಹಂತದ ಟ್ರೇಸಿಂಗ್ ಜೊತೆಗೆ, ನೀವು ಯಾವುದೇ ಬ್ಲಾಕ್ನಲ್ಲಿ ಬ್ರೇಕ್ಪಾಯಿಂಟ್ ಅನ್ನು ಹೊಂದಿಸಬಹುದು (ಬ್ಲಾಕ್ ಮೇಲೆ ಕ್ಲಿಕ್ ಮಾಡುವ ಮೂಲಕ).
ಮಾನಿಟರ್‌ನಲ್ಲಿ ನಿಯತಾಂಕಗಳ (ಸಂವೇದಕಗಳು, ರಿಲೇಗಳು) ಪ್ರಸ್ತುತ ಮೌಲ್ಯಗಳನ್ನು ಪ್ರದರ್ಶಿಸಲು, "ಪ್ರಿಂಟ್" ಬ್ಲಾಕ್ ಅನ್ನು ಬಳಸಿ.
ಇದು ಅವಲೋಕನ ವೀಡಿಯೊ ಡೀಬಗರ್ ಅನ್ನು ಬಳಸುವ ಬಗ್ಗೆ.

ಕುತೂಹಲಿಗಳಿಗಾಗಿ ವಿಭಾಗ. ಹುಡ್ ಅಡಿಯಲ್ಲಿ ಏನಿದೆ?

ಗುರಿ ಸಾಧನದಲ್ಲಿ ಸ್ಕ್ರಿಪ್ಟ್‌ಗಳು ಕಾರ್ಯನಿರ್ವಹಿಸಲು, ಬೈಟ್‌ಕೋಡ್ ಇಂಟರ್ಪ್ರಿಟರ್ ಮತ್ತು 38 ಸೂಚನೆಗಳೊಂದಿಗೆ ಅಸೆಂಬ್ಲರ್ ಅನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸಲಾಗಿದೆ. ಬ್ಲಾಕ್ಲಿಯ ಮೂಲ ಕೋಡ್ ವಿಶೇಷ ಕೋಡ್ ಜನರೇಟರ್ ಅನ್ನು ನಿರ್ಮಿಸಿದ್ದು ಅದು ದೃಶ್ಯ ಬ್ಲಾಕ್‌ಗಳನ್ನು ಅಸೆಂಬ್ಲಿ ಸೂಚನೆಗಳಾಗಿ ಪರಿವರ್ತಿಸುತ್ತದೆ. ತರುವಾಯ, ಈ ಅಸೆಂಬ್ಲರ್ ಪ್ರೋಗ್ರಾಂ ಅನ್ನು ಬೈಟ್‌ಕೋಡ್‌ಗೆ ಪರಿವರ್ತಿಸಲಾಗುತ್ತದೆ ಮತ್ತು ಕಾರ್ಯಗತಗೊಳಿಸಲು ಸಾಧನಕ್ಕೆ ವರ್ಗಾಯಿಸಲಾಗುತ್ತದೆ.
ಈ ವರ್ಚುವಲ್ ಯಂತ್ರದ ವಾಸ್ತುಶಿಲ್ಪವು ತುಂಬಾ ಸರಳವಾಗಿದೆ ಮತ್ತು ಅದನ್ನು ವಿವರಿಸುವಲ್ಲಿ ಯಾವುದೇ ನಿರ್ದಿಷ್ಟ ಅಂಶವಿಲ್ಲ; ಅಂತರ್ಜಾಲದಲ್ಲಿ ನೀವು ಸರಳವಾದ ವರ್ಚುವಲ್ ಯಂತ್ರಗಳನ್ನು ವಿನ್ಯಾಸಗೊಳಿಸುವ ಕುರಿತು ಅನೇಕ ಲೇಖನಗಳನ್ನು ಕಾಣಬಹುದು.
ನಾನು ಸಾಮಾನ್ಯವಾಗಿ ನನ್ನ ವರ್ಚುವಲ್ ಯಂತ್ರದ ಸ್ಟಾಕ್‌ಗಾಗಿ 1000 ಬೈಟ್‌ಗಳನ್ನು ನಿಯೋಜಿಸುತ್ತೇನೆ, ಅದು ಬಿಡಲು ಸಾಕು. ಸಹಜವಾಗಿ, ಆಳವಾದ ಪುನರಾವರ್ತನೆಗಳು ಯಾವುದೇ ಸ್ಟಾಕ್ ಅನ್ನು ನಿಷ್ಕಾಸಗೊಳಿಸಬಹುದು, ಆದರೆ ಅವುಗಳು ಯಾವುದೇ ಪ್ರಾಯೋಗಿಕ ಬಳಕೆಯನ್ನು ಹೊಂದಿರುವುದಿಲ್ಲ.

ಪರಿಣಾಮವಾಗಿ ಬೈಟ್‌ಕೋಡ್ ಸಾಕಷ್ಟು ಸಾಂದ್ರವಾಗಿರುತ್ತದೆ. ಉದಾಹರಣೆಯಾಗಿ, ಅದೇ ಅಪವರ್ತನೀಯವನ್ನು ಲೆಕ್ಕಾಚಾರ ಮಾಡಲು ಬೈಟ್‌ಕೋಡ್ ಕೇವಲ 49 ಬೈಟ್‌ಗಳು. ಇದು ಅದರ ದೃಶ್ಯ ರೂಪವಾಗಿದೆ:
ಸೋನಾಫ್ ಬೇಸಿಕ್‌ಗಾಗಿ ವಿಷುಯಲ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್

ಮತ್ತು ಇದು ಅವರ ಅಸೆಂಬ್ಲರ್ ಕಾರ್ಯಕ್ರಮ:

shift -1
ldi 10
call factorial, 1
print
exit
:factorial
ld_arg 0
ldi 1
gt
je 8
ld_arg 0
ld_arg 0
ldi 1
sub
call factorial, 1
mul
ret
ldi 1
ret

ಪ್ರಾತಿನಿಧ್ಯದ ಅಸೆಂಬ್ಲಿ ರೂಪವು ಯಾವುದೇ ಪ್ರಾಯೋಗಿಕ ಮೌಲ್ಯವನ್ನು ಹೊಂದಿಲ್ಲದಿದ್ದರೆ, "ಜಾವಾಸ್ಕ್ರಿಟ್" ಟ್ಯಾಬ್, ಇದಕ್ಕೆ ವಿರುದ್ಧವಾಗಿ, ದೃಷ್ಟಿಗೋಚರ ಬ್ಲಾಕ್ಗಳಿಗಿಂತ ಹೆಚ್ಚು ಪರಿಚಿತ ನೋಟವನ್ನು ನೀಡುತ್ತದೆ:

function factorial(num) {
  if (num > 1) {
    return num + factorial(num - 1);
  }
  return 1;
}

window.alert(factorial(10));

ಕಾರ್ಯಕ್ಷಮತೆಗೆ ಸಂಬಂಧಿಸಿದಂತೆ. ನಾನು ಸರಳವಾದ ಫ್ಲಾಷರ್ ಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ಚಲಾಯಿಸಿದಾಗ, ನಾನು ಆಸಿಲ್ಲೋಸ್ಕೋಪ್ ಪರದೆಯ ಮೇಲೆ 47 kHz ಚದರ ತರಂಗವನ್ನು ಪಡೆದುಕೊಂಡಿದ್ದೇನೆ (80 MHz ನ ಪ್ರೊಸೆಸರ್ ಗಡಿಯಾರದ ವೇಗದಲ್ಲಿ).
ಸೋನಾಫ್ ಬೇಸಿಕ್‌ಗಾಗಿ ವಿಷುಯಲ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್ಸೋನಾಫ್ ಬೇಸಿಕ್‌ಗಾಗಿ ವಿಷುಯಲ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್
ಇದು ಉತ್ತಮ ಫಲಿತಾಂಶ ಎಂದು ನಾನು ಭಾವಿಸುತ್ತೇನೆ, ಕನಿಷ್ಠ ಈ ವೇಗವು ಸುಮಾರು ಹತ್ತು ಪಟ್ಟು ವೇಗವಾಗಿರುತ್ತದೆ ಲುವಾ и ಎಸ್ಪ್ರುಯಿನೋ.

ಅಂತಿಮ ಭಾಗ

ಸಂಕ್ಷಿಪ್ತವಾಗಿ ಹೇಳುವುದಾದರೆ, ಸ್ಕ್ರಿಪ್ಟ್‌ಗಳ ಬಳಕೆಯು ಪ್ರತ್ಯೇಕ ಸಾಧನದ ಕಾರ್ಯಾಚರಣೆಯ ತರ್ಕವನ್ನು ಪ್ರೋಗ್ರಾಂ ಮಾಡಲು ಮಾತ್ರವಲ್ಲದೆ ಹಲವಾರು ಸಾಧನಗಳನ್ನು ಒಂದೇ ಕಾರ್ಯವಿಧಾನಕ್ಕೆ ಸಂಪರ್ಕಿಸಲು ಸಾಧ್ಯವಾಗಿಸುತ್ತದೆ, ಅಲ್ಲಿ ಕೆಲವು ಸಾಧನಗಳು ಇತರರ ನಡವಳಿಕೆಯನ್ನು ಪ್ರಭಾವಿಸುತ್ತದೆ ಎಂದು ನಾನು ಹೇಳುತ್ತೇನೆ.
ಸ್ಕ್ರಿಪ್ಟ್‌ಗಳನ್ನು ಸಂಗ್ರಹಿಸುವ ಆಯ್ಕೆಮಾಡಿದ ವಿಧಾನವು (ನೇರವಾಗಿ ಸಾಧನಗಳಲ್ಲಿಯೇ ಮತ್ತು ಸರ್ವರ್‌ನಲ್ಲಿ ಅಲ್ಲ) ಈಗಾಗಲೇ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತಿರುವ ಸಾಧನಗಳನ್ನು ಮತ್ತೊಂದು ಸರ್ವರ್‌ಗೆ ಬದಲಾಯಿಸುವುದನ್ನು ಸರಳಗೊಳಿಸುತ್ತದೆ, ಉದಾಹರಣೆಗೆ ಹೋಮ್ ರಾಸ್ಪ್ಬೆರಿ, ಇಲ್ಲಿ ಕೈಪಿಡಿ.

ಅಷ್ಟೆ, ಸಲಹೆ ಮತ್ತು ರಚನಾತ್ಮಕ ಟೀಕೆಗಳನ್ನು ಕೇಳಲು ನನಗೆ ಸಂತೋಷವಾಗುತ್ತದೆ.

ಮೂಲ: www.habr.com

ಕಾಮೆಂಟ್ ಅನ್ನು ಸೇರಿಸಿ