www.wikidata.uk-ua.nina.az
Pri rozrobci komp yuternih shahovih program programist musit vibrati tip strukturi danih dlya predstavlennya shahovi poziciyi Isnuye dekilka metodiv dlya cogo yaki vidomi yak predstavlennya shahivnici angl board representations 1 Dlya efektivnosti shahovi rushiyi chasto vikoristovuyut bilshe odnogo metodu predstavlennya shahivnici Zmist 1 Vimogi 2 Tipi 2 1 Spisok figur 2 2 Metodi bazovani na masivi 2 2 1 Metod 0x88 2 3 Bitbordi 3 PrimitkiVimogi red Povnij opis shahovoyi poziciyi tobto yiyi stan povinen mistiti nastupni elementi Roztashuvannya kozhnoyi figuri na shahivnici Chiya cherga hoditi Status 50 ti hodovogo pravila nichiyeyi Napriklad yaksho pered cim 40 hodiv projshlo bez vzyattya abo hodu pishaka ce pravilo pochne diyati pislya inshih desyati hodiv Chi htos iz gravciv zrobiv rokirovku Chi mozhlive vzyattya na prohodi Predstavlennya shahivnici zazvichaj ne vklyuchaye status pravila potrijnogo povtorennya poziciyi bo shob jogo viznachiti potribna majzhe povna istoriya partiyi Tipi red Spisok figur red Deyaki z najranishih shahovih program pracyuvali z takimi obmezhenimi kilkostyami pam yati sho ne bulo navit pam yati shob zapam yatati 64 poziciyi Zamist cogo ci ranni programi pidtrimuvali spiski 16 chornih ta bilih figur Zaraz takij metod use she vikoristovuyetsya v bagatoh suchasnih programah razom z okremoyu strukturoyu predstavlennya shahivnici shob zbilshiti shvidkist dostupu do figur Zamist vikonannya ciklu cherez usi 64 abo bilshe klitinok shob znajti vsi figuri spiski figur dayut pryamij dostup do nih Metodi bazovani na masivi red Odin iz najprostishih sposobiv predstavlennya shahivnici ce stvoriti dvovimirnij masiv 8x8 abo ekvivalentno 64 elementnij odnomirnij masiv Kozhen element cogo masivu pokazuye chi ye na nomu figura abo navpaki yaksho kvadrat porozhnij Zagalnoprijnyate koduvannya rozglyadati 0 yak porozhnye pole pozitivne chislo yak pole z biloyu figuroyu a negativne yak pole iz chornoyu figuroyu Napriklad bilij pishak 1 chornij pishak 1 bilij kin 2 chornij kin 2 bilij slon 3 i tak dali Problema iz cim pidhodom z yavlyayetsya protyagom generaciyi hodiv Treba pereviriti kozhen hid shob upevnitisya sho vin na shahivnici Programa bude robiti cikli priblizno 20 30 raziv za hid i ce znachno upovilnyuye proces Odne rishennya vikoristovuvati masiv 12x12 iz zovnishnimi krayami zapovnenimi skazhimo znachennyam 99 Protyagom generaciyi hodiv operaciya perevirki figuri na klitinci takozh ukazhe chi klitinka na shahivnici abo ni Krashogo vikoristannya pam yati mozhna dosyagti z masivom 10x12 yakij zabezpechuye ti zh funkcionalni mozhlivosti sho j 12x12 Deyaki shahovi rushiyi vikoristovuyut masivi 16x16 shob polipshiti shvidkist ryadovogo peretvorennya chisel i dozvolyayut vikoristovuvati deyaki specialni prijomi dlya zbilshennya agresivnosti programi Programisti mashinnogo kodu mayut inshu alternativu Vikoristovuyuchi 4 biti na kvadrat povnij ryad mozhna zobraziti v 32 bajtah a doshka v 8 registrah iz dodatkovoyu informaciyeyu pro poziciyu Metod 0x88 red U comu metodi vikoristovuyetsya masiv rozmirom 16x8 128 pronumerovanij vid 0 do 127 Ce po suti dvi shahivnici odna poryad z inshoyu de spravzhnya shahivnicya roztashovana z livogo boku Dvijkova shema rozmishennya gorizontali ta vertikali spravzhnoyi shahivnici 0 r r r 0 f f f Generuyuchi peremishennya na osnovnij doshci mozhna legko pereviriti chi yakijs kvadrat roztashovanij na osnovnij doshci prosto nakladayuchi masku na nomer klitinki iz shistnadcyatkovim 0x88 dvijkove 1 0 0 0 1 0 0 0 Nenulovij rezultat ukazuye sho kvadrat poza mezhami osnovnoyi doshki Krim togo riznicya mizh dvoma koordinatami kvadrativ unikalno viznachaye chi roztashovani ti dva kvadrata vzdovzh toyi samoyi gorizontali vertikali abo diagonali Bitbordi red She odin populyarnij sposib predstavlennya doshki vikoristannya bitbordiv angl bitboard Bitbord 64 rozryadna poslidovnist bitiv nuliv chi odinic yaka vkazuye vidsutnist abo prisutnist hibnist abo istina deyakogo stanu na kozhnomu misci shahivnici Poziciyu na shahivnici potim zobrazhuyut vikoristovuyuchi cikl bitbordiv Napriklad cikl bitbordiv dlya kozhnoyi figuri abo pishaka Perevaga cogo metodu zdatnist vikoristovuvati operaciyi rozryadnoyi paraleli na 64 bitnih ob yektah zamist iteraciyi shob otrimuvati informaciyu pro stan shahivnici Vikoristovuyuchi cej metod mozhna dosyagti znachnogo zbilshennya shvidkosti programi osoblivo na 64 bitnih sistemah Do nedolikiv mozhna vidnesti vidnosnu skladnist programuvannya porivnyano z inshimi sposobami Primitki red Robert Hajatt Predstavlennya shahivnici shahovih program Povna stattya Arhivovano 10 lyutogo 2012 u Wayback Machine angl nbsp Cya stattya ye zagotovkoyu Vi mozhete dopomogti proyektu dorobivshi yiyi Ce povidomlennya varto zaminiti tochnishim Otrimano z https uk wikipedia org w index php title Predstavlennya shahivnici amp oldid 34960110