Ríomhairí, Bogearraí
RPN: algartam, modhanna agus samplaí
RPN déanta uair amháin bhunús ríomhchláraitheoir ar fud an domhain. Sa lá atá inniu nach bhfuil sé ar eolas chomh maith. Dá bhrí sin, léaráid grinn, a thaispeánann le "droim ar ais" rollaí ispíní Polainnis taobh amuigh, is féidir a misunderstood go fóill ag roinnt ríomhchláraitheoirí eolach. Nach maith an- míniú a thabhairt ar an joke, ach sa chás seo beidh sé inchosanta go hiomlán.
Infix
Tá gach ríomhchláraitheoirí, agus an chuid is mó mac léinn eolas maidir leis an úsáid a bhaint as na n-oibreoirí. Mar shampla, na luachanna abairt x + suimiú do na hathróga x agus y comhartha móide a úsáidtear. ar eolas go maith ar Lúide é an bhfíric go bhfuil sé seo ar iasacht ó mhatamaitic nodaireacht, ar a dtugtar Infix nodaireacht, i ndáiríre, tá fadhb mhór do na meaisíní. Faigheann an oibreoir mar ionchur dá luach a taifeadadh ar an chlé agus ar dheis. I cláir a úsáidtear nodaireacht optionally le hoibríochtaí comharthaí. Mar shampla, is féidir x + y Is féidir a scríobh mar fheidhm de huaire (x, y), ina bhfuil an tiomsaitheoir agus diaidh ar ndiaidh athraíonn nodaireacht Infix. Mar sin féin, fhios ag gach duine go bhfuil an mata ró-mhaith gan úsáid a bhaint sloinn uimhríochtúla, a fhoirmiú de chineál ar inmheánaigh mion-teanga i mbeagnach gach teanga cláir.
aistritheoir foirmle
Tá an chéad teanga cláir Fortran rathúil i ndáiríre a bheith mar sin den chuid is mó mar gheall ar an abairt uimhríochtúil (ie foirmle ..) thiontú sé (craoladh) sa chód, mar sin, an t-ainm é - FORMULA Aistriúcháin. Roimhe sin, bhí siad a scríobh, mar shampla, fillte i bhfoirm feidhmeanna (agus méadú (b, c)). Measadh go raibh i fadhb COBOL ar chur i bhfeidhm foirmle comhshó uathoibríoch an-deacair toisc go raibh na ríomhchláraitheoirí chun rudaí cosúil le Cuir A Go B Mutliply Faoi C. scríobh
Cad atá cearr leis Infix?
Is í an fhadhb, go bhfuil na hoibreoirí maoine den sórt sin mar tosaíocht agus comhthiomsaitheacht. Mar gheall ar seo, go dtiocfaidh an sainmhíniú ar fheidhm Infix tasc neamh-fánach. Mar shampla, tá iolrú tosaíochta níos airde ná an suimiú nó dealú, rud a chiallaíonn nach bhfuil an abairt 2 + 3 * 4 cothrom le suim na 2 agus 3, arna iolrú faoi 4, mar a bheadh sé i gcomhlíonadh na n-oibreoirí ó chlé go deas. Go deimhin, a iolrú 3 de 4 agus cuir 2 Léiríonn an sampla go n-éilíonn an ríomh an abairt Infix minic a athrú ar an ord na n-oibreoirí agus oibrinn. Lena chois sin, tá sé riachtanach chun braces úsáid chun breathnú nodaireacht níos soiléire. Mar shampla, ní féidir le (2 + 3) * (4 + 5) Is féidir a scríobh gan na lúibíní, mar gheall ar 2 + 3 * 4 + 5 chiallaíonn gur gá duit a iolrú 3 de 4 agus cuir 2 agus 5.
Éilíonn an t-ord ina ba mhaith leat do na hoibreoirí ríomh cuimhneamh i bhfad. Mar gheall ar seo, mic léinn a thosú uimhríocht a fhoghlaim, is minic a fháil ar na torthaí mícheart, fiú má tá na hoibríochtaí iarbhír a dhéantar i gceart. Is gá a mhúineadh an t-ordú na n ráiteas gníomhaíocht croí. Gcéad dul síos, caithfidh an gníomh a chur i gcrích i lúibíní, ansin iolrú agus roinnt, agus ar deireadh suimiú agus dealú. Ach tá ar bhealach eile a scríobh nathanna matamaiticiúla mar go bhfuil Infix nodaireacht ach ar cheann de na is féidir "teangacha beaga" is féidir a chur le níos mó.
Réimír agus postfix nodaireacht
Tá dhá cheann de na roghanna is cáiliúla is é a thaifeadadh ar an oibreoir roimh nó tar éis a oibrinn. Tá siad ar a dtugtar an réimír agus postfix nodaireacht. Logician Yan Lukasevich chum an chéad cheann i 1920. Chónaigh sé sa Pholainn, agus mar sin tá an taifead ar a dtugtar na Polainne. Postfix leagan an bhreiseáin, faoi seach, ar a dtugtar droim ar ais Polainnis Nodaireacht (ARF). Is é an difríocht amháin idir an dá mhodh an treo ina bhfuil a léamh ar an taifead (ó chlé go deas nó ceart chun chlé), agus mar sin suffices sé a mheas go mion ach duine amháin acu. Is é an t-oibreoir OPN scríofa i ndiaidh a oibrinn. Dá bhrí sin, is ionann an abairt AB + sampla RPN do A + B.
Líon neamhtheoranta na n oibrinn
Is é an buntáiste láithreach nodaireachta a thugann achoimre ar sé an t-oibreoir n-adic agus tá sé Infix nodaireacht i ndáiríre oibríonn le dhá oibrinn amháin, t. E. An bhfuil go bunúsach oiriúnach ach chun oibríochtaí dénártha. Mar shampla, is é ABC @ an abairt inbhéartach na Polainne ag baint úsáide as comhartha triadic, a bhfuil an luach is fearr ar A, B agus C. Sa chás seo, na gníomhartha oibreoir ar an 3 oibreann lena chlé, agus fhreagraíonn do @ glao feidhm (A, B, C). Má tá tú iarracht a scríobh ar an tsiombail @ mar Infix, ar nós A @ BC nó rud éigin mar sin, is léir go bhfuil sé nach bhfuil ach ag obair.
An tosaíocht a thugtar leis an ordú
RPN Tá buntáiste eile sa mhéid is go féidir leis an tosaíocht na n-oibreoirí a léiriú leis an ord a gcuma. Ag an am céanna riamh braces dhíth, ach féadfar iad a áireamh mar oibríochtaí carachtair a éascú athrú ó nodaireacht Infix. Mar shampla, AB + C * - gan athbhrí coibhéiseach (A + B) * C, mar sin ní féidir leis an iolraithe a ríomh go dtí an Chomh maith a dhéantar, a thugann an dara oibreann haghaidh iolraithe. Is é sin, más rud é an ríomh AB + C * de réir oibreoir amháin ag an am, a fháil againn AB + C * -> (AB +) * C -> (A + B) * C.
algartam ríomh
Breathnaíonn an t-oibreoir OPN mar fheidhm a thógann mar hargóintí dá luach scríofa ar a chlé an gcéanna. Lena chois sin, tá sé nodaireacht nádúrtha lena n-úsáid i dteangacha cláir, mar a fhreagraíonn an tslí ina gcuirtear ríomh do na hoibríochtaí Stack agus an gá atá le parsáil dhíchur. Mar shampla, beidh an t-arrester san abairt 5 + 6 * 7 le feiceáil mar 5, 6, 7 *, +, agus is féidir é a ríomh go simplí trí scanadh ó chlé go deas agus scríobh na luachanna i Stack. Aon uair a comhartha coitianta oibríochta, arna roghnú ag an ngné uachtair 2 den gcuimhne ríomhaire, tá an t-oibreoir a úsáidtear agus an toradh ar ais go dtí chuimhne. Nuair a bheidh an toradh deiridh ar an abairt ríomha a bheith i barr an chairn.
Mar shampla:
- S = () 5, 6, 7, *, + 5 a chur ar an chairn.
- S = (5) 6, 7, *, + 6 a chur ar an chairn.
- S = (5, 6), 7 *, 7 + cuir an chairn.
- S = (5, 6, 7), * 2 + luachanna ón chairn, úsáid * roghnú agus cuir an toradh sa Stack.
- S = (5, 6 * 7) = (5, 42) + 2 luachanna a roghnaíodh as an chairn, a chur i bhfeidhm ar an + agus an toradh sa Stack.
- S = (5 + 42) = tá (47) ríomh chun críche, is é an toradh atá stóráilte sa barr an chairn.
Is féidir é seo algartam a sheiceáil RPN arís agus arís eile, ach gach uair a bheidh sé ag obair, is cuma cé chomh casta an abairt uimhríochtúil.
OPN agus cruacha atá nasctha go dlúth. Léiríonn an sampla seo conas a bhaint as an chuimhne ar an luach an nodaireacht droim ar ais Polainnis ríomh. Is Lúide léir gur féidir leat é a úsáid ar an chairn, athrú focal Infix caighdeánach i teip duánacha géarmhíochaine.
Samplaí de theangacha cláir
Pascal RPN thuig mar seo (Taispeánann an chuid den chlár).
A léamh ar huimhreacha agus oibreoirí sa timthriall ar a dtugtar nós imeachta, a chinneann cé acu an uimhir nó comhartha chomhartha oibríocht. Sa chéad chás, tá an luach a stóráil sa Stack, agus an dara ceann den dá uimhir Stack uachtarach fhreagraíonn gníomhaíocht a dhéantar agus is é an toradh a stóráil.
toktype: = num;
léamh (í);
más rud é c in [ '+', '-', '*', '/'] tosú ansin
más rud é eoln ansin cn: = '' eile é a léamh (cn);
más rud é cn = '' ansin
gcás
'+': Toktype: = cuir; '-': toktype: = fo;
'*': Toktype: = mul; '/': Toktype: = div
deireadh
eile tús
más rud é a = '-' ansin SGN: = -1 eile Earráid: = c <> '+';
le: = cn
deireadh
deireadh;
más rud é (ní earráid) agus (toktype = uimhriúil) ansin getnumber;
más rud é toktype <> num tosú ansin
y = pop; x: = pop;
más rud é nach earráid sin
gcás toktype ar
cuir: z: = x + y = fo: z: = x-y; mul: z: = x * y = div: z: = x / y
deireadh
bhrú (z);
C-chur i bhfeidhm RPN (cuid a thaispeáint den chlár):
do (s = strtok (s, w); s; s = strtok (0, w)) {
a = strtod (s, & e);
más rud é (e> s) bhrú (a);
#define rpnop (x) printf ( "% c:", * s), b = pop (), a = pop (), bhrú (x)
eile más rud é (* s == '+') rpnop (a + b);
eile más rud é (* s == "-") rpnop (a - b);
eile más rud é (* s == '*') rpnop (a * b);
eile más rud é (* s == '/') rpnop (a / b);
rpnop #undef
}
implementations crua-earraí
Sa lá sin, nuair a bhí an teicneolaíocht ríomhaireachta an-daor, bhí shíl sé smaoineamh maith chun bhfeidhm do dhaoine a úsáid arresters borrtha. In 1960-aí., Mar anois, bhíothas in ann a cheannach ar an áireamháin, ina n-oibríonn i nodaireacht droim ar ais Polainnis. Chun cur 2 agus 3 acu Ní mór dul isteach 2, ansin 3, agus an "móide" a bhrú. Ar an gcéad amharc, agus bhain an oibrinn ionchur sa oibreoir casta agus deacair cuimhneamh, ach tar éis tamaill go bhfuil roinnt addicted a ghabhann leis an mbealach smaointeoireachta agus nach bhféadfadh sé a thuiscint cén fáth seasann na cinn eile ar Infix dúr, rud atá chomh casta agus mar sin teoranta.
Burroughs cuideachta fiú tógtha mainframe, a raibh aon chuimhne eile, ach amháin Stack. An rud amháin a dhéanann an t-inneall - i bhfeidhm na halgartaim agus na modhanna RPN leis an chairn lárnach. Gach ceann de a chuid oibríochtaí a bhí mar oibreoirí arresters, a bhfuil feidhm leis na luachanna n uachtair. Mar shampla, ghlac an fhoireann an Seoladh Fillte ó bharr an chairn, agus mar sin de. D. An ailtireacht den sórt sin meaisín a bhí simplí, ach ní tapa go leor chun dul san iomaíocht leis na ailtireachtaí níos coitianta. Go leor, áfach, brón fós ar an bhfíric go den sórt sin cur chuige simplí agus galánta a ríomhaireachta a raibh gach clár léiriú OPN, fuair a leanúint.
Bhí One áireamháin ama le RPN phobail, agus roinnt daoine a thabhairt dóibh fós rogha. Lena chois sin, d'fhorbair siad Stack dírithe Teangacha, ar nós Forth. Sa lá atá inniu go bhfuil sé beag úsáid, ach fós nostalgic as a n-úsáideoirí iar.
Mar sin, cad é an jokes bhrí faoi Polainnis Droim ar Ais ispíní?
Má glacaimid go bhfuil an t-oibreoir an ispíní, an nodaireacht Infix, ba chóir é a bheith laistigh rolla mar atá i madraí te traidisiúnta. Tá an RPN suite ceart i fháil dhá leath therebetween réidh i ndiaidh ríomh. Anois a thagann an chuid deacair - mustaird. Tá sí cheana féin ar an ispíní, t. E. ríomh cheana féin mar oibreoir unary. Tá sé Creidtear gur cheart mustaird a thaispeáint freisin mar uncalculated ba cheart é a bhog sé go dtí do cheart an ispíní ... Ach is féidir, bheadh gá Stack ró-mhór de ...
Similar articles
Trending Now