Важная информация

User Tag List

Страница 4 из 6 ПерваяПервая 123456 ПоследняяПоследняя
Показано с 31 по 40 из 59

Тема: Програмирование

  1. #31
    --- Аватар для Shadow Maker
    Регистрация
    01.03.2005
    Адрес
    Саранск
    Сообщений
    5,824
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    239
    Поблагодарили
    101 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Во жесткачите...
    Свирепый агрессивно-депрессивный мордовец!
    Не уверен - не напрягай!

    Не сдавайся. Дыши?

    Virtual TR-DOS

  2. #31
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #32
    Vitamin C++ Аватар для Vitamin
    Регистрация
    14.01.2005
    Адрес
    Таганрог, Россия
    Сообщений
    4,258
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    84
    Поблагодарили
    36 сообщений
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Если в качестве источника вывода используется инкрементальный/декрементальный счетчик, то можно конвертить на лету:

    Код:
    counter:
        ld a,0
        add a,1
        daa
        ld (counter+1),a
    ;старшие 4 бита А - десятки, младшие - единицы.
    ЗЫ. Не помню точно, daa только на add/sub реагирует или на inc/dec тоже...

  4. #33
    Master
    Регистрация
    17.05.2005
    Адрес
    г. Абакан
    Сообщений
    694
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    помоему только на add/sub

  5. #34
    Member Аватар для Shwartz
    Регистрация
    31.08.2007
    Адрес
    Kharkov
    Сообщений
    37
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Придумал еще один способ, отнимать последовательно 80, 40, 20, 10.

    Код:
        ;  a - исходное число
        ;на выходе:
        ;  h - первый символ
        ;  l - второй символ
        ;  a, b, de - портятся
    HexToDec
            ld   b, 80
            ld   de, #800   ;d = 8
            ld   h, e       ;H = 0; L не имеет значения
    Loop    cp   b
            jr   c, Less
            sub  b
            add  hl, de
    Less    srl  b          ;b /= 2
            srl  d          ;d /= 2
            jr   nc, Loop
            ld   d, "0"     ;e == 0
            add  d
            ld   l, a
            add  hl, de
            ret
    Понятно, что это медленный способ. Просто было интересно.
    Последний раз редактировалось Shwartz; 18.09.2008 в 00:52.

  6. #35
    --- Аватар для Shadow Maker
    Регистрация
    01.03.2005
    Адрес
    Саранск
    Сообщений
    5,824
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    239
    Поблагодарили
    101 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Ну если мы уж про совсем аццкие способы, то вот как было сделано в первой программе, которую я написал на ассемблере (скорее всего это даже не моя процедура):

    В HL я так понял число, потом по адресу BUFFER выстраивается число для печати. Метод кстати прикольный, ибо позволяет в принципе конвертировать любой длины числа при должной адаптации.

    Код:
    DECIMAL LD BC,BUFFER
            LD DE,10000
            CALL COUNT
            LD DE,1000
            CALL COUNT
            LD DE,100
            CALL COUNT
            LD DE,10
            CALL COUNT
            LD A,L 
            ADD A,48
            LD (BC),A 
            RET 
    COUNT   XOR A 
    LP      PUSH HL 
            SBC HL,DE 
            JR C,ENDC
            INC A 
            INC SP 
            INC SP 
            JP LP
    ENDC    POP HL 
            ADD A,48
            LD (BC),A 
            INC BC 
            RET
    Последний раз редактировалось Shadow Maker; 18.09.2008 в 09:00. Причина: Добавлено сообщение
    Свирепый агрессивно-депрессивный мордовец!
    Не уверен - не напрягай!

    Не сдавайся. Дыши?

    Virtual TR-DOS

  7. #36
    Activist Аватар для tmp_online
    Регистрация
    02.04.2006
    Адрес
    Приютово
    Сообщений
    256
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Народ, не поможете советом? Вот кусочек кода, который должен выполниться.

    Код:
    ;--------------------------------------
    	ld hl,udg
    	ld (23675),hl
    	ld a,2
    	call 5633
    	ld de,score
    	ld bc,08h
    	call 8252
    
    	;ld de,hisco
    	;ld bc,10
    	;call 8252
    
    	ld de,kvtst
    	ld bc,0Dh
    	call 8252
    
     ret
    
    kvtst	defb 22,5,11,144,144,144,144,144,144,144,144,144,144
    score	defb 22,2,1,"S","C","O","R","E"
    udg 	defb 254,130,186,186,186,130,254,0
    hisco	defb 22,2,23,"H","I","S","C","O","R","E"
    До этого все было нормально, но если убрать ";", то выводится не совсем то, что надо. А именно вот это:

    Не подскажете, в чем дело? Я пробовал менять координаты (hisco defb 22,2,23,"H","I","S","C","O","R","E") вместо 2 и 23 ставил другие координаты, но ничего не помогает.
    Последний раз редактировалось tmp_online; 29.09.2009 в 18:54.
    Savage
    Cracked by Bill Gillbert 1989

  8. #37
    Guru Аватар для SAM style
    Регистрация
    28.02.2005
    Адрес
    Великий Новгород
    Сообщений
    2,055
    Спасибо Благодарностей отдано 
    10
    Спасибо Благодарностей получено 
    218
    Поблагодарили
    92 сообщений
    Mentioned
    9 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    набрал то же самое. вполне получилось.
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	andwtf.png 
Просмотров:	251 
Размер:	14.8 Кб 
ID:	13463  
    Все любят гипножабу

  9. #38
    Activist Аватар для tmp_online
    Регистрация
    02.04.2006
    Адрес
    Приютово
    Сообщений
    256
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    SAM style, спасибо, натолкнул на одну мысль.
    Добавил
    Код:
    null1 defb 22,21,31," "
    и вызвал процедуру печати этого пробела между SCORE и HISCORE. Все заработало.
    Savage
    Cracked by Bill Gillbert 1989

  10. #39
    Veteran Аватар для daniel
    Регистрация
    31.10.2005
    Адрес
    Кемерово
    Сообщений
    1,384
    Спасибо Благодарностей отдано 
    106
    Спасибо Благодарностей получено 
    20
    Поблагодарили
    11 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    а в пзу должна быть процедурка вывода hex в dec формате. никто не искал?

  11. #40
    Veteran Аватар для AER
    Регистрация
    18.11.2009
    Адрес
    пгт.Малиновка
    Сообщений
    1,355
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    1
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    13 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Нужен скролл экрана с права на лево , по знакоместам с цветом , и удалением уехавшего за пределы экрана. При вызове процедуры сдвигает влево экран на одно знакоместо.


    Поделитесь, пожалуйста.

Страница 4 из 6 ПерваяПервая 123456 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Ответов: 21
    Последнее: 23.02.2005, 20:56

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •