ZXNet эхоконференция «code.zx»


тема: MOA CRC



от: Stanislav Udin
кому: All
дата: 29 Jul 2001
Привет all! Вот чуть подправил процедуру, которую Кирилл предложил, так что бы таблица получалась как у МОА, но что-то не получается у меня ее больше ускорить, хотя чувствую это можно сделать: DI LD HL,CRC_TAB LD C,0 BYTE LD E,0 LD D,C DEC D LD B,8 EX DE,HL NBIT ADD HL,HL JR C,NXOR LD A,L XOR #21 ;Здесь и ниже быстрее ксориться с содержимым ;регистра, однако регистров не хватает :( LD L,A LD A,H XOR #10 LD H,A NXOR DJNZ NBIT EX DE,HL LD (HL),D INC HL LD (HL),E INC HL DEC C JR NZ,BYTE RET CRC_TAB DEFS 512,0 А за одно может и МОАшную процедуру ускорить можно? ;Cyclic Redundancy Check. ;Подсчет контрольной суммы. ;IN : [DE] - START, [BC] - LENGHT ;OUT: [DE] - CRC-SUMM. CRC LD HL,#FFFF PUSH IX PUSH DE POP IX EX DE,HL CRC_1 LD HL,CRC_TAB LD A,(IX) INC IX XOR E ADD A,L LD L,A JR NC,CRC_2 INC H CRC_2 LD A,D XOR (HL) LD E,A INC HL XOR A XOR (HL) LD D,A DEC BC LD A,C OR B JR NZ,CRC_1 POP IX RET Процедуры будут всегда использовать в паре, то есть вначале генериться таблица, а потом тут же расчет CRC. Может быть можно эти де процедуры объединить и ускорить этот общий конгламерат? Hужно будет общитывать всего 508 байт. Stanislav

от: Kirill Frolov
кому: Stanislav Udin
дата: 30 Jul 2001
Hемедленно нажми на RESET, Stanislav! 29 Jul 01 22:25, Stanislav Udin wrote to All: SU> Вот чуть подправил процедуру, которую Кирилл предложил, так что бы SU> таблица получалась как у МОА, но что-то не получается у меня ее больше SU> ускорить, хотя чувствую это можно сделать: Hужно думать об алгоритмической оптимизации, а не о коде. SU> LD H,A SU> NXOR DJNZ NBIT SU> EX DE,HL SU> LD (HL),D SU> INC HL SU> LD (HL),E SU> INC HL SU> - DEC C + INC C + LD A, C + CP 129 SU> JR NZ,BYTE SU> RET SU> CRC_TAB DEFS 512,0 CRC_TAB DEFS 258, 0 SU> CRC_1 LD HL,CRC_TAB SU> LD A,(IX) SU> INC IX SU> XOR E + ADD A, A + JR NC, $+3 + INC H SU> ADD A,L SU> LD L,A ^^^^^^^^^^ Вот ошибка. Из-за неё больше 257 байт в таблице не используется. SU> JR NC,CRC_2 SU> INC H SU> CRC_2 LD A,D




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

Похожие статьи:
От автора - О рубриках газеты.
Настальгия - воспоминания о создании C-Net Week.
Ремонт - Ремонт магнитолы Panasonic.
BBS - список станций BBS ZXNet.
Реклама - Реклама и объявления.

В этот день...   8 мая