IP հասցեն բաղկացած է չորս տասնորդական թվերից, որոնցից յուրաքանչյուրը կարող է տատանվել 0-ից մինչև 255: Յուրաքանչյուր այդպիսի համարժեք համարժեք է երկնիշ տասնվեցական կամ ութ-բիթանոց երկուականին, ուստի կոչվում է octet: Այս չորս կարճ համարները սցենար գրելիս երբեմն անհրաժեշտ է թարգմանել մեկ երկարի:
Հրահանգներ
Քայլ 1
Բազմապատկեք IP հասցեի առաջին octet- ը 16777216- ով, կամ համարժեքորեն `256-ը երրորդ հզորությամբ: Օրինակ, եթե մենք խոսում ենք 192.168.1.1 IP հասցեի մասին (այն հաճախ հանդիպում է փոքր տեղական ցանցերում), ապա 192 թիվը 16777216- ով բազմապատկելուց հետո ստանում ես 3221225472:
Քայլ 2
Երկրորդ թիվը բազմապատկել 65536-ով. Ահա թե ինչքան ես ստանում, եթե 256-ը բարձրացնում ես երկրորդ հզորության: Օրինակ, 192.168.1.1 հասցեում դուք պետք է բազմապատկեք 168-ը 65536-ով և կստանաք 11010048:
Քայլ 3
Երրորդ օկտետը բազմապատկեք 256-ով `առաջին հզորության վրա, այսինքն` 256 թվով: Եթե IP հասցեն 192.168.1.1- ը վերափոխեք երկար ձևի, ապա այս բազմապատկման արդյունքը կլինի 256 * 1 = 256:
Քայլ 4
Չորրորդ թիվը թողեք անփոփոխ, ինչը համարժեք է մեկով բազմապատկելուն: Դա պայմանավորված է նրանով, որ եթե 256 թիվը (կամ որևէ այլ թիվ) բարձրացնեք զրոյական հզորության, կստանաք 1. 192.168.1.1 IP հասցեում բազմապատկման արդյունքը կլինի 1 * 1 = 1:
Քայլ 5
Միացրեք բոլոր բազմապատկման բոլոր չորս արդյունքները միասին: Այստեղ դիտարկված օրինակի համար գումարը կտեսնի հետևյալը ՝ 3232235777:
Քայլ 6
PHP- ում ծրագրավորելիս օգտագործեք ip2long պատրաստի գործառույթը `IP հասցեն երկար ձևով թարգմանելու համար: Նպատակով նմանատիպ գործառույթը կարող է կազմվել և ներառվել ծրագրի կամ առանձին մոդուլի մեջ `այլ ծրագրավորման լեզվով:
Քայլ 7
IP հասցեն երկար ձևից կարճ վերափոխելու խնդիրն առաջանում է շատ ավելի հազվադեպ: Դա անելու համար երկար հասցեն բաժանեք 16777216- ի, և բաժանման արդյունքի ամբողջ մասը դառնում է առաջին octet: Մնացորդը բաժանեք (մի խառնեք կոտորակային մասի հետ) 65536-ի վրա `երկրորդ octet ստանալու համար և այլն: Ինժեներական հաշվիչների վրա հաշվարկեք մոդուլը հետևյալ կերպ. [C] առաջին համար [ՊՆ] երկրորդ համար [=]: Ամենապարզ հաշվիչները չունեն այս հատկությունը:
Քայլ 8
Որոշակի ծրագրավորման լեզվով հակադարձ թարգմանություն կատարելու համար գործառույթ գրելիս օգտագործեք գործառույթներ ամբողջ բաժանման և բաժանման մնացած մասը հաշվարկելու համար: Օրինակ, Պասկալում դրանք համապատասխանաբար կոչվում են div և mod: Նման թարգմանություն կատարելու ծրագրի մի հատված կարող է նման լինել.
octet [1]: = longip div 16777216;
հաջորդ համարը ՝ = longip mod 16777216;
octet [2]: = հաջորդ համարի div 65536;
հաջորդ համարը ՝ = հաջորդ համարը mod 65536;
octet [3]: = հաջորդ համարը div 256;
octet [4]: = հաջորդ համար 256;