Demo or Die #02
31 июля 1999

Demo-строение - Генератор таблицы квадратов.

<b>Demo-строение</b> - Генератор таблицы квадратов.
__________________________________________

   (c) ra!d

       Генератор таблицы квадратов

   Действие  этого  генератора,основано на
очень        интересной       зависимости,
математически это выглядит например так:

      k       k-1
     X     = X  + Nk,

         k    k-1
   где  X  и X - квадраты последовательных
чисел,на данной и преды дущих итерациях;

   k -соответственно номер итерации;
   Nk - число из ряда натуральных нечетных
чисел;

   Думаю   что   это   небольшая  таблица,
поможет понять сей алгоритм.

  ┌───┬──┬──┬──┬──┬──-
  │ X │1 │2 │3 │4 │...
  ├───┼──┼──┼──┼──┼──-
  │X^2│1 │4 │9 │16│...
  ├───┼──┴──┴──┴──┼───
  │ N │  3  5  7  │
  └───┴───────────┴──-

   Hекоторые  замечания  по поводу данного
примера:

   1)   Данный   пример   создает  таблицу
квадратов чисел от 0 до 255;
   2)    В    таблице,    квадраты   чисел
располагаются   сверху-вниз,  т.е  сначала
идет квадрат 255, затем квадрат 254 и т.д.
(это   связанно   с  спецификой  структуры
стека).
   Hедостатком  это  назвать трудно,скажем
так,  это  просто  побочный эффект,который
очень     легко    решается    -достаточно
инверсировать    число,квадрат    которого
находится,например так:

             LD A,ЧИСЛО,
             ;КВАДРАТ КОТОРОГО
             ;ТРЕБУЕТСЯ HАЙТИ.
             CPL
             LD BC,TABL
             LD H,0
             LD L,A
             ADD HL,HL
             ADD HL,BC
             LD E,(HL)
             INC HL
             LD D,(HL)
             
   3)   Hе   забудьте  в  конце  программы
перенаправить стек.

;*****************************************
;*               GEN_TABL_X^2            *
;*    (C) 1999 idea and code by ra!d     *
;*        code len:16b                   *
;*****************************************

      LD SP,TABL+512
      LD HL,1
      LD D,H
      LD E,L
      LD B,#FF
LP1   PUSH HL
      INC DE
      INC DE
      ADD HL,DE
      DJNZ LP1
      ;LD SP,nnnn
      ;RET

TABL  DEFS 512

   P.S.  Кстати,  я так и не встретил ни в
одном математическом справочнике, описание
данного метода.
__________________________________________


 



Другие статьи номера:

Deathmatch Quake v. 2.00 - Кpаткое пособие по методам лишения жизни себе подобных.

Demo party - оффициальные результаты Chaos Construction 999 для PC.

Demo party - оффициальные результаты Chaos Construction 999 для ZX Spectrum.

Demo party - оффициальные результаты Paradox'99 для PC.

Demo party - оффициальные результаты Paradox'99 для ZX Spectrum.

Demo-строение - Phong Shading.

Demo-строение - Radial blur, эффект размывки по кругу битмапа.

Demo-строение - Генератор таблицы квадратов.

Demo-строение - древний эффект под хитрым названием Moving Shit.

Demo-строение - о некоторых методах сортировки.

Demo-строение - Процедура печати чанков.

Demo-строение - Реализация плазмы pазмеpом 2x2.

NeOS FAQ - Часто задаваемые вопpосы по операционной системе для ZX Spectrum - NeOS.

Интервью - Интервью с Деннисом Ричи (Dennis M. Ritchie) создателем языка программирования "С".

Интервью - интервью с известным coder'ом, одним из основателей M&U Sinclair Club, а позже и eTc group - Lazy.

Интервью - Интервью с кодером и железячником LD/X-Trade.

Критика - картика на первый номеp жypнала Demo or Die.

От редакции - Интерфейс.

От редакции - Эпилог.

Приложение - упаковщик экранных файлов LazyPack 2.0.

Реклама - Реклама и обьявления.


Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Реклама на канале "ББС"
Census - дюжина наиболее сознательных спектрумистов: Osip, Казаков Владимир Викторович, Sander, Kristof, Hard, Zeg, Moonk, Fatal Snipe, Spinal, Mad Rain, Crime Sphere, Dead Man.
Учимся кoдить "Bесчи" - II - Уневеpсaльная пoдпpoгpaмма печaти шpифтoм 32*24.
Последняя страница - авторы номера.
BBS - список станций BBS ZXNet.

В этот день...   21 ноября