ਕੰਪਿਊਟਰ ', ਸਾਫਟਵੇਅਰ
ਆਰ.ਪੀ.ਐਨ.: ਕਲਨ, ਢੰਗ ਅਤੇ ਮਿਸਾਲ
ਆਰ.ਪੀ.ਐਨ. ਇਕ ਵਾਰ ਸੰਸਾਰ ਵਿੱਚ ਇੱਕ ਕੰਪਿਊਟਰ ਪ੍ਰੋਗਰਾਮਰ ਦੇ ਆਧਾਰ 'ਦਾ ਗਠਨ ਕੀਤਾ. ਅੱਜ ਇਸ ਨੂੰ ਇਸ ਦੇ ਨਾਲ ਨਾਲ ਜਾਣਿਆ ਨਾ ਗਿਆ ਹੈ. ਇਸ ਲਈ, ਕਾਮਿਕ ਮਿਸਾਲ, ਬਾਹਰ ਇੱਕ "ਉਲਟਾ" ਪੋਲਿਸ਼ ਲੰਗੂਚਾ ਗੜਬੜੀ ਦੀ ਤਸਵੀਰ ਹੈ, ਅਜੇ ਵੀ ਕੁਝ ਜਾਣਕਾਰ ਪ੍ਰੋਗਰਾਮਰ ਕੇ ਸਮਝਿਆ ਜਾ ਸਕਦਾ ਹੈ. ਨਾ ਬਹੁਤ ਹੀ ਚੰਗੀ ਮਜ਼ਾਕ ਦੀ ਵਿਆਖਿਆ ਹੈ, ਪਰ ਇਸ ਮਾਮਲੇ 'ਚ ਇਸ ਨੂੰ ਪੂਰਾ ਹੱਕ ਹੋਵੇਗਾ.
infix
ਸਾਰੇ ਪ੍ਰੋਗਰਾਮਰ, ਅਤੇ ਸਭ ਵਿਦਿਆਰਥੀ ਚਾਲਕ ਦੀ ਵਰਤੋ ਦੇ ਨਾਲ ਜਾਣਦੇ ਹਨ. ਉਦਾਹਰਨ ਲਈ, ਲਈ ਵੇਰੀਏਬਲ x ਅਤੇ y ਵਰਤੀ ਪਲੱਸ ਨਿਸ਼ਾਨ ਸਮੀਕਰਨ X + ਮਿਲਕੀਅਤ ਮੁੱਲ. ਘੱਟ ਨਾਲ ਨਾਲ ਜਾਣਿਆ ਗੱਲ ਇਹ ਹੈ ਕਿ ਗਣਿਤ ਨੋਟੇਸ਼ਨ, infix ਨੋਟੇਸ਼ਨ ਕਹਿੰਦੇ ਤੱਕ ਉਧਾਰ ਹੈ, ਅਸਲ 'ਚ, ਮਸ਼ੀਨ ਲਈ ਇੱਕ ਵੱਡੀ ਸਮੱਸਿਆ ਹੈ. ਦੇ ਤੌਰ ਤੇ ਇੰਪੁੱਟ ਦੋ ਮੁੱਲ ਦੇ ਖੱਬੇ ਅਤੇ ਸੱਜੇ ਤੇ ਦਰਜ ਹਨ, ਇਹ ਆਪਰੇਟਰ ਪ੍ਰਾਪਤ ਕਰਦਾ ਹੈ. ਪ੍ਰੋਗਰਾਮਿੰਗ ਵਿਚ ਨੋਟੇਸ਼ਨ ਕਰਿਸ਼ਮੇ ਓਪਰੇਸ਼ਨ ਨਾਲ ਚੋਣਵੇ ਵਰਤਿਆ. ਉਦਾਹਰਨ ਲਈ X + y ਗੁਣਾ (x, y) ਦੇ ਇੱਕ ਫੰਕਸ਼ਨ ਹੈ, ਜਿਸ ਵਿੱਚ ਕੰਪਾਈਲਰ ਅਤੇ ਇਸ ਦੇ ਫਲਸਰੂਪ infix ਨੋਟੇਸ਼ਨ ਬਦਲਦਾ ਹੈ ਦੇ ਰੂਪ ਵਿੱਚ ਲਿਖਿਆ ਜਾ ਸਕਦਾ ਹੈ. ਪਰ, ਹਰ ਕੋਈ ਜਾਣਦਾ ਹੈ ਗਣਿਤ ਗਣਿਤ ਸਮੀਕਰਨ ਹੈ, ਜੋ ਕਿ ਲਗਭਗ ਹਰ ਪਰੋਗਰਾਮਿੰਗ ਭਾਸ਼ਾ ਵਿੱਚ ਅੰਦਰੂਨੀ ਮਿੰਨੀ-ਭਾਸ਼ਾ ਦੀ ਇੱਕ ਕਿਸਮ ਦੀ ਫਾਰਮ ਵਰਤਣ ਲਈ ਹੈ, ਨਾ ਵੀ ਚੰਗਾ ਹੈ.
ਫਾਰਮੂਲਾ ਅਨੁਵਾਦਕ
ਪਹਿਲੀ ਅਸਲ ਵਿੱਚ ਸਫਲ ਫੋਰਟਰਾਨ ਪ੍ਰੋਗਰਾਮਿੰਗ ਭਾਸ਼ਾ ਬਣ ਗਈ ਹੈ, ਇਸ ਲਈ ਵੱਡੇ ਪੱਧਰ ਹੈ, ਕਿਉਕਿ ਗਣਿਤ ਸਮੀਕਰਨ (ਭਾਵ ਫਾਰਮੂਲੇ ..) ਇਹ ਕੋਡ ਵਿਚ (ਪ੍ਰਸਾਰਣ) ਵਿੱਚ ਬਦਲ, ਇਸ ਲਈ ਇਸ ਨੂੰ ਦੇ ਨਾਮ - ਫਾਰਮੂਲਾ ਅਨੁਵਾਦ. ਜੋ ਕਿ ਕਰਨ ਲਈ ਪ੍ਰਾਇਰ, ਉਹ, ਲਿਖਣ ਦੀ, ਉਦਾਹਰਨ ਲਈ, ਫੰਕਸ਼ਨ ਦੇ ਰੂਪ ਵਿੱਚ ਲਪੇਟੇ ਸੀ (ਅਤੇ ਗੁਣਾ (ਅ, ੲ)). ਆਟੋਮੈਟਿਕ ਤਬਦੀਲੀ ਫਾਰਮੂਲਾ ਲਾਗੂ ਕਰਨ ਦੀ ਕੋਬੋਲ ਸਮੱਸਿਆ ਵਿੱਚ ਬਹੁਤ ਹੀ ਮੁਸ਼ਕਲ ਮੰਨਿਆ ਗਿਆ ਹੈ, ਕਿਉਕਿ ਪ੍ਰੋਗਰਾਮਰ ਵਰਗੇ A B Mutliply ਵਿਚ ਜੋੜੋ ਸੈਲਸੀਅਸ ਕੁਝ ਲਿਖਣ ਲਈ ਸੀ
ਕੀ infix ਦੇ ਨਾਲ ਗਲਤ ਹੈ?
ਸਮੱਸਿਆ ਹੈ, ਜੋ ਕਿ ਚਾਲਕ ਤਰਜੀਹ ਹੈ ਅਤੇ associativity ਦੇ ਤੌਰ ਤੇ ਅਜਿਹੇ ਵਿਸ਼ੇਸ਼ਤਾ ਹੈ. ਇਸ ਕਰਕੇ, infix ਫੰਕਸ਼ਨ ਦੀ ਪਰਿਭਾਸ਼ਾ ਗੈਰ-ਮਾਮੂਲੀ ਕੰਮ ਬਣ ਗਿਆ ਹੈ. ਉਦਾਹਰਨ ਲਈ, ਗੁਣਾ, ਜਿਸ ਦਾ ਮਤਲਬ ਹੈ ਕਿ 2 + 3 * 4, 2 ਅਤੇ 3 ਦਾ ਜੋੜ, 4 ਗੁਣਾ ਦੇ ਬਰਾਬਰ ਨਹੀ ਹੈ ਦੇ ਰੂਪ ਵਿੱਚ ਇਸ ਨੂੰ ਚਾਲਕ ਦੀ ਕਾਰਗੁਜ਼ਾਰੀ 'ਚ ਹੋਵੇਗਾ ਸੱਜੇ ਖੱਬੇ ਤੱਕ ਇਸ ਦੇ ਨਾਲ ਜ ਘਟਾਉ ਵੱਧ ਤਰਜੀਹ ਹੈ. ਅਸਲ ਵਿਚ, 4 3 ਗੁਣਾ ਹੈ ਅਤੇ 2. ਨੂੰ ਜੋਡ਼ਨ ਇਹ ਮਿਸਾਲ ਲੱਗਦਾ ਹੈ ਕਿ infix ਸਮੀਕਰਨ ਦੇ ਹਿਸਾਬ ਅਕਸਰ ਚਾਲਕ ਅਤੇ ਪ੍ਰਭਾਵੀ ਅੰਕ ਦੇ ਕ੍ਰਮ ਵਿੱਚ ਇੱਕ ਤਬਦੀਲੀ ਦੀ ਲੋੜ ਹੈ. ਇਸ ਦੇ ਨਾਲ, ਇਸ ਨੂੰ ਚ ਵਰਤਣ ਲਈ ਹੋਰ ਸਾਫ ਨੋਟੇਸ਼ਨ ਦੀ ਭਾਲ ਕਰਨ ਲਈ ਜ਼ਰੂਰੀ ਹੈ. ਉਦਾਹਰਨ ਲਈ, (2 + 3) * (4 + 5), ਬਰੈਕਟ ਬਿਨਾ ਲਿਖਿਆ ਨਹੀ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ, ਕਿਉਕਿ 2 + 3 4 5 ਦਾ ਮਤਲਬ ਹੈ ਕਿ ਤੁਹਾਨੂੰ 4 3 ਗੁਣਾ ਅਤੇ 2 ਅਤੇ 5 ਵਿੱਚ ਸ਼ਾਮਿਲ ਕਰਨ ਦੀ ਲੋੜ ਹੈ.
ਜਿਸ ਵਿੱਚ ਤੁਹਾਨੂੰ ਚਾਲਕ ਦੀ ਗਣਨਾ ਕਰਨ ਲਈ ਚਾਹੁੰਦੇ ਹੋ ਇੱਕ ਲੰਬੇ ਨੂੰ ਯਾਦ ਕਰਨ ਦੀ ਲੋੜ ਹੈ. ਇਸ ਕਰਕੇ, ਜੋ ਵਿਦਿਆਰਥੀ, ਹਿਸਾਬ ਸਿੱਖਣ ਲਈ ਅਕਸਰ ਸ਼ੁਰੂ ਗ਼ਲਤ ਹੈ ਨਤੀਜੇ ਪ੍ਰਾਪਤ, ਅਸਲ ਓਪਰੇਸ਼ਨ ਠੀਕ ਕੀਤੇ ਗਏ ਹਨ, ਵੀ, ਜੇ. ਇਹ ਦਿਲ ਦੇ ਕੇ ਕਾਰਵਾਈ ਦੀ ਬਿਆਨ ਦੇ ਹੁਕਮ ਸਿਖਾਉਣ ਲਈ ਜ਼ਰੂਰੀ ਹੈ. ਪਹਿਲੀ, ਕਾਰਵਾਈ ਦੀ ਬਰੈਕਟ, ਫਿਰ ਗੁਣਾ ਅਤੇ ਤਕਸੀਮ, ਅਤੇ ਅੰਤ ਵਿੱਚ ਜੋੜ ਅਤੇ ਘਟਾਉ ਵਿੱਚ ਬਾਹਰ ਹੀ ਕੀਤਾ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ. ਪਰ ਗਣਿਤ ਸਮੀਕਰਨ ਲਿਖਣ ਦੇ ਤੌਰ infix ਨੋਟੇਸ਼ਨ ਹੀ ਸੰਭਵ "ਛੋਟੇ ਭਾਸ਼ਾ", ਜੋ ਕਿ ਹੋਰ ਨੂੰ ਸ਼ਾਮਿਲ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ, ਦਾ ਇੱਕ ਹੈ ਦਾ ਇਕ ਹੋਰ ਤਰੀਕਾ ਹੈ.
ਅਗੇਤਰ ਅਤੇ postfix ਨੋਟੇਸ਼ਨ
ਸਭ ਚੰਗੀ-ਜਾਣਿਆ ਬਦਲ ਦੇ ਦੋ ਅੱਗੇ ਜ ਇਸ ਦੇ ਅੰਕ ਦੇ ਬਾਅਦ ਆਪਰੇਟਰ ਨੂੰ ਰਿਕਾਰਡ ਕਰਨ ਲਈ ਹੈ. ਉਹ ਅਗੇਤਰ ਅਤੇ postfix ਨੋਟੇਸ਼ਨ ਦੇ ਤੌਰ ਤੇ ਜਾਣਿਆ ਜਾਦਾ ਹੈ. ਤਰਕਸ਼ਾਸਤਰੀ ਯੰਨ Lukasevich 1920 ਵਿਚ ਪਹਿਲੇ ਇੱਕ ਦੀ ਕਾਢ. ਉਸ ਨੇ Poland ਵਿੱਚ ਰਹਿੰਦਾ ਹੈ, ਇਸ ਲਈ ਰਿਕਾਰਡ ਨੂੰ ਪੋਲਿਸ਼ ਨੂੰ ਕਿਹਾ ਗਿਆ ਹੈ. ਦੂਜੀ ਵਰਜਨ, ਕ੍ਰਮਵਾਰ, ਉਲਟਾ ਪੋਲਿਸ਼ ਨੋਟੇਸ਼ਨ (ARF) ਕਹਿੰਦੇ ਹਨ. ਇਸ ਲਈ ਇਸ ਨੂੰ ਉਹ ਦੇ ਸਿਰਫ ਇੱਕ ਹੀ ਵਿਸਥਾਰ ਵਿੱਚ ਵਿਚਾਰ ਕਰਨ ਲਈ ਕਾਫ਼ੀ ਹੈ ਇਹ ਦੋ ਢੰਗ ਵਿਚਕਾਰ ਫ਼ਰਕ ਸਿਰਫ਼, ਜਿਸ ਵਿੱਚ ਰਿਕਾਰਡ (ਸੱਜੇ ਜ ਸੱਜੇ ਖੱਬੇ ਖੱਬੇ) ਨੂੰ ਪੜ੍ਹਨ ਲਈ ਦਿਸ਼ਾ ਹੈ. OPN ਆਪਰੇਟਰ ਇਸ ਦੇ ਅੰਕ ਦੇ ਬਾਅਦ ਲਿਖਿਆ ਗਿਆ ਹੈ. ਇਸ ਲਈ, ਸਮੀਕਰਨ ਏਬੀ + ਏ + ਬੀ ਲਈ ਇੱਕ ਮਿਸਾਲ ਆਰ.ਪੀ.ਐਨ. ਨੂੰ ਵੇਖਾਉਦਾ ਹੈ
ਅੰਕ ਦੀ ਗਿਣਤੀ ਨੂੰ ਅਣਗਿਣਤ
ਨੋਟੇਸ਼ਨ ਦੀ ਤੁਰੰਤ ਫਾਇਦਾ ਹੈ ਕਿ ਇਹ n-ਚਾਲਿਤ ਆਪਰੇਟਰ ਨੂੰ ਸੰਖੇਪ ਹੈ ਅਤੇ infix ਨੋਟੇਸ਼ਨ ਅਸਲ ਵਿੱਚ ਸਿਰਫ ਦੋ ਅੰਕ ਦੇ ਨਾਲ ਕੰਮ ਕਰਦਾ ਹੈ, t. ਈ ਸਿਰਫ ਬਾਇਨਰੀ ਓਪਰੇਸ਼ਨ ਲਈ ਮੁੱਢ ਠੀਕ ਹਨ. ਉਦਾਹਰਨ ਲਈ, ABC @ triadic ਨਿਸ਼ਾਨ ਹੈ, ਜੋ ਕਿ ਏ, ਬੀ ਅਤੇ ਸੀ ਦੇ ਵੱਧ ਮੁੱਲ ਇਸ ਮਾਮਲੇ ਵਿੱਚ ਆਪਰੇਟਰ ਤਿੰਨ ਅੰਕ ਦੀ ਆਪਣੇ ਆਪ ਨੂੰ ਦੇ ਖੱਬੇ ਤੇ ਕੰਮ ਕਰਦਾ ਹੈ ਅਤੇ ਇੱਕ ਫੰਕਸ਼ਨ ਕਾਲ @ ਨਾਲ ਸੰਬੰਧਿਤ ਵਰਤ ਉਲਟ ਪੋਲਿਸ਼ ਪ੍ਰਗਟਾਵਾ ਹੈ (ਏ, ਬੀ, ਸੀ). ਤੁਹਾਨੂੰ ਅਜਿਹੇ ਇੱਕ @ ਬੀ.ਸੀ. ਜ ਹੈ ਕਿ ਕੋਈ ਚੀਜ਼ ਦੇ ਤੌਰ ਤੇ infix, ਦੇ ਰੂਪ ਵਿੱਚ @ ਪ੍ਰਤੀਕ ਲਿਖਣ ਲਈ ਕੋਸ਼ਿਸ਼ ਕਰੋ, ਜੇ, ਇਸ ਨੂੰ ਸਾਫ ਬਣ, ਜੋ ਕਿ ਇਸ ਨੂੰ ਸਿਰਫ਼ ਕੰਮ ਨਹੀ ਕਰਦਾ ਹੈ.
ਤਰਜੀਹ ਦੇ ਕ੍ਰਮ ਦੁਆਰਾ ਦਿੱਤਾ
ਆਰ.ਪੀ.ਐਨ. ਹੈ, ਜੋ ਕਿ ਚਾਲਕ ਦੀ ਤਰਜੀਹ ਆਪਣੇ ਦਿੱਖ ਦਾ ਕ੍ਰਮ ਦੁਆਰਾ ਦਰਸਾਇਆ ਜਾ ਸਕਦਾ ਹੈ ਵਿੱਚ ਇੱਕ ਹੋਰ ਫਾਇਦਾ ਹੈ. ਉਸੇ ਹੀ ਵੇਲੇ, ਚ ਲੋੜ ਹੈ ਕਦੇ, ਪਰ ਉਹ ਦੇ ਤੌਰ ਅੱਖਰ ਕਾਰਵਾਈ infix ਨੋਟੇਸ਼ਨ ਤੱਕ ਤਬਦੀਲੀ ਦੀ ਸਹੂਲਤ ਲਈ ਸ਼ਾਮਿਲ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ. ਮਿਸਾਲ ਲਈ, ਏਬੀ + C ਦੀ * - ਸਪੱਸ਼ਟ ਬਰਾਬਰ (ਏ + ਬੀ) * C, ਇਸ ਲਈ ਗੁਣਾ ਇਲਾਵਾ ਕੀਤੀ ਹੈ, ਜੋ ਕਿ ਗੁਣਾ ਲਈ ਇੱਕ ਦੂਜਾ ਅੰਕ ਦਿੰਦਾ ਹੈ, ਜਦ ਤੱਕ ਦਾ ਹਿਸਾਬ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ. ਜੋ ਕਿ ਹੈ, ਜੇ ਇੱਕ ਵਾਰ 'ਤੇ ਇੱਕ ਆਪਰੇਟਰ ਦੁਆਰਾ ਗਿਣਿਆ ਏਬੀ + C ਦੀ *, ਸਾਨੂੰ ਏਬੀ + C ਦੀ * ਪ੍ਰਾਪਤ -> (AB +) * C -> (ਏ + ਬੀ) * C.
ਕੈਲਕੂਲੇਸ਼ਨ ਐਲਗੋਰਿਥਮ
OPN ਆਪਰੇਟਰ ਇੱਕ ਫੰਕਸ਼ਨ ਦੇ ਤੌਰ ਤੇ ਬਹਿਸ ਦੇ ਦੋ ਮੁੱਲ ਨੂੰ ਉਸ ਦੇ ਖੱਬੇ ਪਾਸੇ ਲਿਖਿਆ ਲੱਗਦਾ ਹੈ, ਜੋ ਕਿ ਦੇ ਤੌਰ ਤੇ ਹੀ ਵੇਖਦਾ ਹੈ. ਇਸ ਦੇ ਨਾਲ, ਇਸ ਨੂੰ, ਪ੍ਰੋਗਰਾਮਿੰਗ ਭਾਸ਼ਾ ਵਿੱਚ ਵਰਤਣ ਲਈ ਇੱਕ ਕੁਦਰਤੀ ਵੇਖਾ ਰਿਹਾ ਹੈ ਦੇ ਰੂਪ ਵਿੱਚ ਇਸ ਦੇ ਹਿਸਾਬ ਦੇ ਤਰੀਕੇ ਸਟੈਕ ਓਪਰੇਸ਼ਨ ਕਰਨ ਲਈ ਸੰਬੰਧਿਤ ਹੈ ਅਤੇ ਪਾਰਸਿੰਗ ਦੀ ਲੋੜ ਨੂੰ ਖਤਮ ਹੋ ਰਿਹਾ ਹੈ. ਮਿਸਾਲ ਲਈ, ਸਮੀਕਰਨ 5 6 7 ਵਿਚ arrester 5, 6, 7 *, ਦੇ ਰੂਪ ਵਿੱਚ ਵੇਖਾਈ ਦੇਵੇਗਾ, ਅਤੇ ਸੱਜੇ ਖੱਬੇ ਤੱਕ ਇਸ ਨੂੰ ਸਕੈਨਿੰਗ ਕੇ ਬਸ ਦਾ ਹਿਸਾਬ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ ਅਤੇ ਇੱਕ ਸਟੈਕ ਵਿੱਚ ਮੁੱਲ ਲਿਖੋ. ਜਦ ਵੀ ਕਾਰਵਾਈ ਦੇ ਇੱਕ ਆਮ ਨਿਸ਼ਾਨ, ਕੰਪਿਊਟਰ ਮੈਮੋਰੀ ਦੇ ਵੱਡੇ ਤੱਤ 2 ਚੁਣਿਆ, ਆਪਰੇਟਰ ਵਰਤਿਆ ਹੈ ਅਤੇ ਇਸ ਦਾ ਨਤੀਜਾ ਮੈਮੋਰੀ ਨੂੰ ਪਰਤ ਗਏ. ਜਦ ਹਿਸਾਬ ਸਮੀਕਰਨ ਦੇ ਅੰਤ ਦਾ ਨਤੀਜਾ ਸਟੈਕ ਦੇ ਸਿਖਰ '' ਚ ਹੋ ਜਾਵੇਗਾ.
ਉਦਾਹਰਨ ਲਈ:
- S = () 5, 6, 7, *, 5 ਸਟੈਕ 'ਤੇ ਰੱਖਿਆ.
- S = (5) 6, 7, *, 6 ਸਟੈਕ 'ਤੇ ਰੱਖਿਆ.
- S = (5, 6), 7 *, 7 + ਸਟੈਕ ਰੱਖੋ.
- S = (5, 6, 7), * 2 + ਸਟੈਕ ਲਈ, ਇਹ ਵਰਤੋ * ਮੁੱਲ ਚੁਣੋ ਅਤੇ ਸਟੈਕ ਵਿੱਚ ਨਤੀਜਾ ਰੱਖੋ.
- S = (5, 6 * 7) = (5, 42) + 2 ਮੁੱਲ ਸਟੈਕ ਤੱਕ ਚੁਣਿਆ, ਤੇ ਲਾਗੂ ਹੈ ਅਤੇ ਸਟੈਕ ਵਿੱਚ ਨਤੀਜਾ ਪਾ ਲਈ.
- S = (5 42) = (47) ਹਿਸਾਬ ਪੂਰਾ ਹੋ ਗਿਆ ਹੈ, ਇਸ ਦਾ ਨਤੀਜਾ ਸਟੈਕ ਦੇ ਸਿਖਰ 'ਵਿੱਚ ਸੰਭਾਲਿਆ ਗਿਆ ਹੈ.
ਇਹ ਐਲਗੋਰਿਥਮ ਆਰ.ਪੀ.ਐਨ. ਵਾਰ-ਵਾਰ ਕੀਤੀ ਜਾ ਸਕਦਾ ਹੈ, ਪਰ ਹਰ ਵਾਰ ਇਸ ਨੂੰ ਕੰਮ ਕਰੇਗਾ, ਕੋਈ ਵੀ ਇਸ ਮਾਮਲੇ ਨੂੰ ਗੁੰਝਲਦਾਰ ਗਣਿਤ ਸਮੀਕਰਨ.
OPN ਅਤੇ ਸਟੈਕ ਧਿਆਨ ਨਾਲ ਜੁੜੇ ਹਨ. ਇਹ ਉਦਾਹਰਨ ਕਿਸ ਮੈਮੋਰੀ ਵਰਤਣ ਲਈ ਰਿਵਰਸ ਪੋਲਿਸ਼ ਨੋਟੇਸ਼ਨ ਦੇ ਮੁੱਲ ਦੀ ਗਣਨਾ ਕਰਨ ਲਈ. ਘੱਟ ਸਪੱਸ਼ਟ ਹੈ ਕਿ ਤੁਹਾਨੂੰ ਸਟੈਕ ਨੂੰ ਵਰਤ ਸਕਦੇ ਹੋ, ਗੰਭੀਰ ਪੇਸ਼ਾਬ ਲਈ ਅਸਫਲਤਾ ਵਿੱਚ ਮਿਆਰੀ infix ਸਮੀਕਰਨ ਤਬਦੀਲ ਕਰ ਰਿਹਾ ਹੈ.
ਪ੍ਰੋਗਰਾਮਿੰਗ ਭਾਸ਼ਾ ਦੇ ਉਦਾਹਰਣ
ਪਾਸਕਲ ਆਰ.ਪੀ.ਐਨ. ਨੂੰ ਅਹਿਸਾਸ ਵਰਗੇ ਇਸ (ਪ੍ਰੋਗਰਾਮ ਦਾ ਹਿੱਸਾ ਲੱਗਦਾ ਹੈ).
ਚੱਕਰ, ਵਿਧੀ ਨੂੰ ਬੁਲਾਇਆ ਹੈ, ਜੋ ਕਿ ਹੈ ਕਿ ਕੀ ਇਸ ਟੋਕਨ ਨੰਬਰ ਜ ਨਿਸ਼ਾਨ ਕਾਰਵਾਈ ਨਿਰਧਾਰਿਤ ਕਰਦੀ ਹੈ ਵਿਚ ਨੰਬਰ ਅਤੇ ਚਾਲਕ ਨੂੰ ਪੜ੍ਹਨ ਲਈ. ਪਹਿਲੇ ਕੇਸ ਵਿੱਚ, ਮੁੱਲ ਸਟੈਕ ਵਿੱਚ ਸਟੋਰ ਹੈ, ਅਤੇ ਦੋ ਵੱਡੇ ਸਟੈਕ ਨੰਬਰ ਅਨੁਸਾਰੀ ਕਾਰਵਾਈ ਕਰਨ ਦੇ ਦੂਜੇ ਕੀਤਾ ਗਿਆ ਹੈ ਅਤੇ ਇਸ ਦੇ ਨਤੀਜੇ ਨੂੰ ਸੰਭਾਲਿਆ ਗਿਆ ਹੈ.
toktype: = NUM;
ਨੂੰ ਪੜ੍ਹਨ (ਹਵਾਈਅੱਡੇ);
ਜੇ C ਵਿੱਚ [ '+', '-', '*', '/'] ਫਿਰ ਸ਼ੁਰੂ
ਜੇ ਫਿਰ eoln ਚੀਨ: = '' ਕਿਸੇ ਹੋਰ ਨੂੰ ਪੜ੍ਹਨ (CN);
ਜੇ ਚੀਨ = '' ਫਿਰ
ਨੂੰ ਇੱਕ ਦੇ ਮਾਮਲੇ
'+': Toktype: = ਨੂੰ ਜੋਡ਼ਨ; '-': toktype: = ਸਬ;
'*': Toktype: = ਮੂਲ; '/': Toktype: = Div
ਅੰਤ
ਹੋਰ ਸ਼ੁਰੂ
ਜੇ ਇੱਕ = '-' ਫਿਰ SGN: = -1 ਹੋਰ ਗਲਤੀ: = C <> '+';
ਦੇ ਨਾਲ: = CN
ਅੰਤ
ਨੂੰ ਖਤਮ;
ਜੇ (ਨਾ ਗਲਤੀ) ਅਤੇ (toktype = NUM) ਫਿਰ getnumber;
ਜੇ toktype <> NUM ਫਿਰ ਸ਼ੁਰੂ
y = ਪੌਪ; X: = ਪੌਪ;
ਜੇ ਨਾ, ਫਿਰ ਗਲਤੀ
ਦੇ ਮਾਮਲੇ toktype
ਸ਼ਾਮਿਲ ਕਰੋ: z: = X + y; ਸਬ: z: = X-y; ਮੂਲ: z: = X * y; Div: z: = X / y
ਅੰਤ
ਪੁਸ਼ (z);
ਸੀ-ਨੂੰ ਲਾਗੂ ਆਰ.ਪੀ.ਐਨ. (ਪ੍ਰੋਗਰਾਮ ਦਾ ਹਿੱਸਾ ਹੈ ਦਿਖਾਇਆ):
{(;; ਹਵਾਈਅੱਡੇ S = strtok (0, W) S = strtok (ਹਵਾਈਅੱਡੇ, W)) ਲਈ
ਨੂੰ ਇੱਕ = strtod (ਹਵਾਈਅੱਡੇ, ਅਤੇ ਈ);
ਜੇ (ਈ> ਹਵਾਈਅੱਡੇ) ਪੁਸ਼ (ਇੱਕ);
#define rpnop (x) printf ( "% c:", * ਹਵਾਈਅੱਡੇ), ਅ = ਪੌਪ (), ਇੱਕ = ਪੌਪ (), ਪੁਸ਼ (x)
ਹੋਰ, ਜੇ (* ਹਵਾਈਅੱਡੇ == '+') rpnop (A + ਅ);
ਹੋਰ, ਜੇ (* ਹਵਾਈਅੱਡੇ == '-') rpnop (ਇੱਕ - ਅ);
ਹੋਰ, ਜੇ (* ਹਵਾਈਅੱਡੇ == '*') rpnop (ਇੱਕ * ਅ);
ਹੋਰ, ਜੇ (* ਹਵਾਈਅੱਡੇ == '/') rpnop (ਇੱਕ / b);
#undef rpnop
}
ਹਾਰਡਵੇਅਰ ਸਥਾਪਨ
ਉਹ ਦਿਨ ਵਿਚ, ਜਦ ਕੰਪਿਊਟਰ ਤਕਨਾਲੋਜੀ ਬਹੁਤ ਹੀ ਮਹਿੰਗਾ ਸੀ, ਇਸ ਨੂੰ ਇੱਕ ਚੰਗਾ ਵਿਚਾਰ ਸੋਚਿਆ ਗਿਆ ਸੀ ਕਿ ਲੋਕ ਵਾਧਾ arresters ਵਰਤਣ ਲਈ ਮਜਬੂਰ ਕਰਨ ਲਈ. 1960-ਤਰੀਕੇਿਾਲ ਵਿੱਚ., ਹੁਣ ਦੇ ਤੌਰ ਤੇ, ਇਸ ਨੂੰ ਸੰਭਵ ਕੈਲਕੂਲੇਟਰ, ਜਿਸ ਨੂੰ ਰਿਵਰਸ ਪੋਲਿਸ਼ ਨੋਟੇਸ਼ਨ ਵਿੱਚ ਕੰਮ ਖਰੀਦਣ ਲਈ ਸੀ. 2 ਸ਼ਾਮਿਲ ਕਰਨ ਲਈ ਹੈ ਅਤੇ ਉਹ ਦੇ 3 2, ਫਿਰ 3 ਦੇਣਾ ਚਾਹੀਦਾ ਹੈ, ਅਤੇ "ਪਲੱਸ" ਬਟਨ ਨੂੰ ਦਬਾਉ. ਪਹਿਲੀ ਨਜ਼ਰ 'ਤੇ, ਆਪਰੇਟਰ ਨੂੰ ਇੰਪੁੱਟ ਅੰਕ ਗੁੰਝਲਦਾਰ ਹੈ ਅਤੇ ਮੁਸ਼ਕਲ ਨੂੰ ਯਾਦ ਕਰਨ ਲਈ ਸੀ, ਪਰ ਇੱਕ ਜਦਕਿ ਬਾਅਦ ਕੁਝ ਸੋਚ ਦੀ ਇਸ ਢੰਗ ਨਾਲ ਕਰਨ ਲਈ ਆਦੀ ਹਨ ਅਤੇ ਸਮਝ ਨਾ ਸਕਿਆ ਕਿ ਹੋਰ ਮੂਰਖ infix ਹੈ, ਜੋ ਕਿ ਇਸ ਲਈ ਗੁੰਝਲਦਾਰ ਹੈ ਅਤੇ ਇਸ ਲਈ ਹੀ ਸੀਮਿਤ ਹੈ ਤੇ ਜ਼ੋਰ.
Burroughs ਕੰਪਨੀ ਵੀ ਇੱਕ ਮੇਨਫਰੇਮ ਹੈ, ਜੋ ਕਿ ਕੋਈ ਹੋਰ ਮੈਮੋਰੀ ਸੀ, ਸਟੈਕ ਨੂੰ ਛੱਡ ਕੇ ਬਣਾਇਆ. ਸਿਰਫ ਗੱਲ ਇਹ ਹੈ ਕਿ ਮਸ਼ੀਨ ਨੂੰ ਬਣਾ ਦਿੰਦਾ ਹੈ - ਮੱਧ ਸਟੈਕ ਨੂੰ ਐਲਗੋਰਿਥਮ ਅਤੇ ਢੰਗ ਆਰ.ਪੀ.ਐਨ. ਲਾਗੂ ਕੀਤਾ. ਇਸ ਦੇ ਓਪਰੇਸ਼ਨ ਦੇ ਸਾਰੇ arresters ਚਾਲਕ, ਵੱਡੇ n ਮੁੱਲ ਲਈ ਲਾਗੂ ਹੁੰਦਾ ਹੈ, ਜੋ ਕਿ ਦੇ ਤੌਰ ਤੇ ਸਮਝਿਆ ਗਿਆ ਸੀ. ਮਿਸਾਲ ਲਈ, ਟੀਮ ਨੂੰ ਹੋਰ ਆਮ ਆਰਕੀਟੈਕਚਰ ਦੇ ਨਾਲ ਮੁਕਾਬਲਾ ਕਰਨ ਲਈ ਸਟੈਕ ਦੇ ਸਿਖਰ ਤੱਕ ਵਾਪਸੀ ਦਾ ਪਤਾ ਲੈ ਲਿਆ ਹੈ, ਅਤੇ ਇਸ 'ਤੇ. ਡੀ ਅਜਿਹੇ ਇੱਕ ਮਸ਼ੀਨ ਦੇ ਆਰਕੀਟੈਕਚਰ, ਸਧਾਰਨ ਸੀ, ਪਰ ਤੇਜ਼ ਕਾਫ਼ੀ ਨਹੀ. ਕਈ, ਪਰ, ਅਜੇ ਵੀ, ਜੋ ਕਿ ਅਸਲ ਕੰਪਿਊਟਿੰਗ ਅਜਿਹੇ ਇੱਕ ਸਧਾਰਨ ਅਤੇ ਸ਼ਾਨਦਾਰ ਪਹੁੰਚ ਹੈ, ਜਿੱਥੇ ਹਰ ਕਾਰਜ ਨੂੰ OPN ਦਾ ਪ੍ਰਗਟਾਵਾ ਸੀ, ਇਸ ਦੇ ਜਾਰੀ ਪਾਇਆ ਅਫ਼ਸੋਸ.
ਆਰ.ਪੀ.ਐਨ. ਨਾਲ ਇਕ ਵਾਰ, ਕੈਲਕੂਲੇਟਰ ਪ੍ਰਸਿੱਧ ਸਨ, ਅਤੇ ਕੁਝ ਲੋਕ ਅਜੇ ਵੀ ਤਰਜੀਹ ਦੇਣ. ਇਸ ਦੇ ਨਾਲ, ਉਹ ਅਜਿਹੇ ਪਰਗਟ ਤੌਰ ਤੇ, ਇੱਕ ਸਟੈਕ-ਅਧਾਰਿਤ ਭਾਸ਼ਾ, ਵਿਕਸਤ. ਅੱਜ ਇਸ ਨੂੰ ਬਹੁਤ ਘੱਟ ਵਰਤਿਆ ਹੈ, ਪਰ ਅਜੇ ਵੀ ਉਸ ਦੇ ਸਾਬਕਾ ਯੂਜ਼ਰ nostalgic ਹੈ.
ਇਸ ਲਈ ਉਲਟਾ ਪੋਲਿਸ਼ ਲੰਗੂਚਾ ਬਾਰੇ ਅਰਥ ਚੁਟਕਲੇ ਕੀ ਹੈ?
ਜੇ ਸਾਨੂੰ ਇਹ ਮੰਨਦੇ ਹਨ ਕਿ ਲੰਗੂਚਾ ਦੇ ਆਪਰੇਟਰ, infix ਨੋਟੇਸ਼ਨ, ਇਸ ਨੂੰ ਰੋਲ ਦੇ ਅੰਦਰ ਰਵਾਇਤੀ ਗਰਮ ਕੁੱਤੇ ਵਿੱਚ ਦੇ ਰੂਪ ਵਿੱਚ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ. ਆਰ.ਪੀ.ਐਨ. ਸਥਿਤ ਹੈ ਸੱਜੇ ਦੋ ਅੱਧੇ ਗਣਨਾ ਦੇ ਬਾਅਦ ਤਿਆਰ therebetween ਵਿੱਚ ਪ੍ਰਾਪਤ ਕਰੋ. ਹੁਣ ਮੁਸ਼ਕਲ ਹਿੱਸਾ ਹੈ ਆ - ਰਾਈ. ਉਹ T ਲੰਗੂਚਾ 'ਤੇ ਹੀ ਹੈ. ਈ ਹੀ ਇੱਕ Unary ਆਪਰੇਟਰ ਦੇ ਤੌਰ ਤੇ ਦੀ ਗਣਨਾ. ਇਹ ਮੰਨਿਆ ਜਾ ਰਿਹਾ ਹੈ, ਜੋ ਕਿ ਰਾਈ ਦਾ ਵੀ uncalculated ਦੇ ਤੌਰ ਤੇ ਦਿਖਾਇਆ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ ਅਤੇ ਇਸ ਲਈ ਲੰਗੂਚਾ ਦੇ ਸੱਜੇ ਕਰਨ ਲਈ ਪ੍ਰੇਰਿਤ ਕੀਤਾ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ ... ਪਰ ਇਹ ਸੰਭਵ ਹੈ, ਇਸ ਦੀ ਵੀ ਬਹੁਤ ਵੱਡੀ ਸਟੈਕ ਦੀ ਲੋੜ ਹੋਵੇਗੀ ...
Similar articles
Trending Now