0x88



Todo o conhecimento que os humanos acumularam ao longo dos séculos sobre 0x88 está agora disponível na Internet, e compilámo-lo e organizámo-lo para si da forma mais acessível possível. Queremos que possa aceder a tudo sobre 0x88 que queira saber de forma rápida e eficiente; que a sua experiência seja agradável e que sinta que encontrou realmente a informação sobre 0x88 que procurava.

Para atingir os nossos objectivos, fizemos um esforço não só para obter a informação mais actualizada, compreensível e verdadeira sobre 0x88, mas também nos certificámos de que o design, a legibilidade, a velocidade de carregamento e a usabilidade da página são tão agradáveis quanto possível, para que possa concentrar-se no essencial, conhecendo todos os dados e informações disponíveis sobre 0x88, sem ter de se preocupar com mais nada, já tratámos disso para si. Esperamos ter alcançado o nosso objectivo e que tenha encontrado a informação que pretendia sobre 0x88. Assim, damos-lhe as boas-vindas e encorajamo-lo a continuar a desfrutar da experiência de utilização de scientiapt.com .

A representação do tabuleiro de xadrez 0x88 é um método centrado no quadrado de representar o tabuleiro de xadrez usado por alguns programas de xadrez . O número 0x88 é um número inteiro hexadecimal (136 10 , 210 8 , 10001000 2 ). As posições de classificação e arquivo são cada uma representada por um nibble (dígito hexadecimal), e os intervalos de bits simplificam uma série de cálculos para operações bit a bit .

Layout

Na representação do tabuleiro 0x88, o layout é espalhado para cobrir um tabuleiro de 8 por 16, igual ao tamanho de dois tabuleiros de xadrez adjacentes. Cada quadrado da matriz 8 por 16 recebe um número, conforme pode ser visto na tabela de layout do tabuleiro. Neste esquema, cada nibble representa uma classificação ou um arquivo, de modo que o inteiro de 8 bits 0x42 representa o quadrado em (4,2) na numeração baseada em zero, ou seja, c5 na notação algébrica padrão .

Adicionar 16 a um número de um quadrado resulta no número do quadrado uma linha acima e subtrair 16 resulta no número do quadrado uma linha abaixo. Para passar de uma coluna para outra, o número é aumentado ou diminuído em um. Na notação hexadecimal, as posições legais do xadrez (A1-H8) estão sempre abaixo de 0x88. Esse layout simplifica muitos cálculos que os programas de xadrez precisam realizar, permitindo operações bit a bit em vez de comparações.

Layout da placa 0x88
0x00 (a) 0x01 (b) 0x02 (c) 0x03 (d) 0x04 (e) 0x05 (f) 0x06 (g) 0x07 (h) 0x08 0x09 0x0A 0x0B 0x0C 0x0D 0x0E 0x0F
0x70 (8) 70 71 72 73 74 75 76 77 78 79 7A 7B 7C 7D 7E 7F
0x60 (7) 60 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F
0x50 (6) 50 51 52 53 54 55 56 57 58 59 5A 5B 5C 5D 5E 5F
0x40 (5) 40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F
0x30 (4) 30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F
0x20 (3) 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F
0x10 (2) 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F
0x00 (1) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F

Notação algébrica e conversão

Cada casa do tabuleiro de xadrez é identificada por um par de coordenadas exclusivo - uma letra entre ( a e h ) para a coluna e um número entre 1 e 8 para a classificação. Este método de se referir a quadrados é uma parte da notação algébrica . Para converter um par de coordenadas em um valor 0x88, os arquivos são tratados como inteiros, com um correspondente a 0 e h correspondendo a 7.

Assim, a 1 corresponde a , com todos os 8 bits definidos como , b 2 corresponde a e h 8 corresponde a .

Para converter um valor 0x88 em um par de coordenadas de arquivo de classificação:

Formulários

Detecção off-the-board

A detecção fora do tabuleiro é um recurso dos programas de xadrez que determina se uma peça está dentro ou fora do tabuleiro de xadrez legal. Em 0x88, o bit mais alto de cada nibble representa se uma peça está no tabuleiro ou não. Especificamente, dos 8 bits para representar uma casa, o quarto e o oitavo devem ser 0 para que uma peça seja localizada dentro do tabuleiro. Isso permite a detecção off-the-board por bit a bit e operações. Se $square AND 0x88(ou, em binário, 0b10001000) for diferente de zero, o quadrado não está no tabuleiro. Essa operação bit a bit requer menos recursos do computador do que comparações de inteiros. Isso torna mais rápidos cálculos como detecção de movimento ilegal.

Relações quadradas

A diferença entre as coordenadas A e B válidas de 0x88 é única em relação à distância e à direção, o que não é verdadeiro para as coordenadas clássicas de classificação e arquivo de três bits. Isso torna as pesquisas por distância de Manhattan , possíveis ataques de peças e movimentos de peças legais mais amigáveis aos recursos. Enquanto as coordenadas quadradas clássicas na faixa de 0-63 requerem tabelas de tamanho 4K (64 × 64), a diferença de 0x88 leva 1/16 disso ou tabelas de 256 tamanhos - ou até 16 a menos.

Um deslocamento de 119 (0x77 como o índice quadrado válido máximo) é adicionado, para tornar ± 119 um intervalo de 0238 (um tamanho de 240 por motivos de alinhamento).

0×88Diff = 0×77 + A  B

Adoção

Embora a representação 0x88 fosse inicialmente popular, ela foi substituída principalmente pelo sistema de quadros de bits .

Referências

Trabalhos citados

  • Hyatt, Robert (2013). "Representações do tabuleiro do programa de xadrez" . Arquivado do original em 12 de fevereiro de 2013 . Página visitada em 6 de março de 2020 .
  • Reul, Fritz Max Heinrich (2009). Novas arquiteturas em xadrez computacional (Tese). Gildeprint, TICC Dissertation Series 6. ISBN 9789490122249.
  • Østensen, Emil Fredrik (outono de 2016). University of Oslo (PDF) (dissertação de mestrado em programação e redes). Universidade de Oslo.
  • Moreland, Bruce (16/07/2007). "0x88 Move Generation" . Arquivado do original em 16/07/2007 . Recuperado em 2020-03-12 .
  • Schalk, Andrea (7 de agosto de 2008). "COMP30191 The Theory of Games and Game Models" (PDF) . Departamento de Ciência da Computação da Universidade de Manchester . Recuperado em 2020-03-18 .
  • Keen, Ben (novembro de 2009). "A History of Computer Chess" (PDF) . Laboratoire Bordelais de Recherche en Informatique . Arquivado do original (PDF) em 2020-03-23 . Recuperado em 2020-03-23 .
  • Dailly, Paul; Gotojuch, Dominik; Henning, Neil; Lawson, Keir; Macdonald, Alec; Tajaddinov, Tamerlan (18 de março de 2008). "Chess Mantis A Chess Engine" . Recuperado em 2020-03-23 .

links externos

Opiniones de nuestros usuarios

Josiane Vidal

Obrigado por este post em 0x88, é exatamente o que eu precisava.

Domingos Coutinho

Esta entrada em 0x88 me ajudou a terminar meu trabalho para amanhã no último momento. Eu já podia me ver puxando a Wikipedia novamente, algo que o professor nos proibiu. Obrigado por me salvar.