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

User Tag List

Показано с 1 по 9 из 9

Тема: Литература по программингу

  1. #1
    Member
    Регистрация
    26.04.2011
    Адрес
    Одесса, Украина
    Сообщений
    34
    Спасибо Благодарностей отдано 
    4
    Спасибо Благодарностей получено 
    8
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Литература по программингу

    Скажите, уважаемые форумчане, кому нибудь попадался внятный мануал по программированию в машинных кодах? (желательно вообще с нуля и конкретно под "радио рк") Или может есть какая-то утилитка которая трансформирует программу, написанную на Басике в формат МК? (про самозапуск знаю - не то; уж слишком тяжеловесные проги получаются...) Спасибо заранее...

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

  3. #2
    Super Moderator Аватар для Ewgeny7
    Регистрация
    03.07.2005
    Адрес
    Санкт-Петербург
    Сообщений
    10,168
    Спасибо Благодарностей отдано 
    146
    Спасибо Благодарностей получено 
    76
    Поблагодарили
    51 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Как таковой, "Ассемблер Радио-86РК для чайников" - не существует.
    Есть книга от авторов компьютера, она охватывает бегло и железо, и ассемблер, и бейсик этой машины.
    Собственно, она и есть "библия" для РК.
    Ну а приемам программирования можно учиться по какой угодно книге.

    - - - Добавлено - - -

    Цитата Сообщение от Cave Посмотреть сообщение
    Или может есть какая-то утилитка которая трансформирует программу, написанную на Басике в формат МК?
    Фу... Не трогай каку...
    ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
    Speccy-2007 128/AY/TR-DOS

    Сайт с документацией к "Scorpion ZS 256"

  4. #3
    Activist Аватар для cy6
    Регистрация
    27.04.2015
    Адрес
    г. Пенза
    Сообщений
    353
    Спасибо Благодарностей отдано 
    249
    Спасибо Благодарностей получено 
    53
    Поблагодарили
    30 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Ewgeny7 Посмотреть сообщение
    Фу... Не трогай каку...
    Да, лучше сразу на языке Си от vinxru. Там все сразу в машинные коды переносится.
    Правда, размер программ получается меньше не намного.

    Практика показывает, что для обучения программированию, лучше взять неудобный и неуклюжий язык (типа бейсика), чтобы написать на нем невозможное. После подобных извращений, можно смело браться за написание RK DOS 3.1 Enterprise.

    С наступившим Новым Солнечным Годом и Рождеством! А для кого то и еще наступающим.
    wtf

  5. #4
    Guru Аватар для Denn
    Регистрация
    04.05.2006
    Адрес
    St.-Petersburg
    Сообщений
    2,220
    Спасибо Благодарностей отдано 
    473
    Спасибо Благодарностей получено 
    899
    Поблагодарили
    591 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    По программированию в машинных кодах была замечательная статья в приложении к ЮТ, в контексте ПРК ЮТ-88. Я с неё начинал свой 8-битный путь.
    Критиковать - значит объяснять автору, что он делает не так, как делал бы я, если бы умел

  6. #5
    Super Moderator Аватар для Ewgeny7
    Регистрация
    03.07.2005
    Адрес
    Санкт-Петербург
    Сообщений
    10,168
    Спасибо Благодарностей отдано 
    146
    Спасибо Благодарностей получено 
    76
    Поблагодарили
    51 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Немножко искажая суть темы, ИМХО самая лучшая книга по изучению ассемблера и прокачки навыков - "Как написать игру на ассемблере для ZX_Spectrum". Но тут две очевидные загвоздки - спектрум вместо 86РК, и Z80 вместо 8080, хоть они и ближайшие родственники. Поэтому совет принимать с осторожностью. Но я начинал именно с нее
    ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
    Speccy-2007 128/AY/TR-DOS

    Сайт с документацией к "Scorpion ZS 256"

  7. #6
    Banned
    Регистрация
    05.10.2016
    Адрес
    г. Санкт-Петербург
    Сообщений
    1,080
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    5 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Ответ не по теме книг. А по тому для чего эти книги.

    Чтобы научиться программировать на ассемблере никакие книги не нужны. Полезных в этом плане книг о КР580 на русском не встречал (для 6502 встречал). Но нужно иметь описание системы команд. Что-то информативное в этом плане можно найти в журналах РАДИО 1982-83. Нужно иметь таблицу всех команд, но только такую, где можно видеть флаги изменяемые конкретной командой.

    Научиться по книгам невозможно. Это пустая трата времени. Можно только на практике. Чтобы научиться надо взяться за конкретную задачу. Что-то реально выполнимое для новичка. Сразу игру или текстовый редактор для РК86 новичок не сможет. Перед началом программирования надо изучить работу всех стандартных функций ПЗУ и знать что делают хотя бы основные команды КР580. Также надо знать работу всех управляющих кодов консоли.

    Чтобы разбираться, что делают конкретные команды, суть работы которых ещё не ясна, полезно иметь отладчик. Причём не штефановский, а обычный DDT. Тогда, встретив команду работа которой не вполне ясна, её прогоняют в отладчике и смотрят результат. Например, многие новички обнаруживают, что команды перехода по чётности/нечётности работают неверно и думают, что обнаружили фатальный "баг" в КР580. Ошибочно полагая, что чётность числа это его способность делиться на 2 без остатка, как это предполагается в арифметике.

    Сначала надо придумать себе простейшие задачи и освоить работу всех стандартных подпрограмм ПЗУ на практике. Именно на практике. Ассеблер МИКРОН с редактором неплохо подходит для этого. Т.к с ним цикл "модификация, проверка" получается коротким (быстрее, чем дисковый ассемблер). Но можно простейшие примеры набирать и проверять в отладчике (штефановский не годится).

    Лишь освоив все стандартные подпрограммы, начинаете писать небольшие программы. Например, напишите программку запрашивающую у пользователя 2 числа и выполняющие над ними все 4 основные арифметические операции. При этом используйте ESC-последовательность для позиционирования курсора. Напишите программку реализующую часы или секундомер. Напишите свою подпрограмму вывода звука. Командами ассемблера нарисуйте на экране какую- либо картинку. При этом освоится работа с экраном функциями ПЗУ. Затем напишите что-нибудь с прямыми обращениями в экранное ОЗУ и напишите собственную подпрограмму опроса матрицы клавиш.

    После того, как основы программирования освоены, полезно посмотреть как пишут программы другие люди. Обычно начинают с изучения исходника ROM-BIOS конкретной машины. Но во всём разобраться там сложно. Посмотрите в исходнике ROM-BIOS только подпрограмму вывода звука и вывод числа в HEX-виде. Исходники ROM-BIOS РК86 можно найти здесь http://zx-pk.ru/threads/11319-radio-...da/page58.html.

    Полезно собственно-ручно дизассемблировать хотя бы несколько простейших программ РК86 с помощью IDA. Причём добиться полноценного перемещаемого исходника, а не просто набора строк в мнемониках.

    Вся вышеперечисленная подготовительная работа должна занять у Вас 1-2 недели труда. После чего Вы полностью готовы написать собственную полноценную программу. Придумайте самую примитивную игру и сделайте её.

    Например, сделайте игру "торпедная атака" - вверху экрана горизонтально двигается спрайт (из 3-х символов), имитирующий корабль. По нажатию пробела снизу вылетает символ '|' (или буква I) и двигается вверх со скоростью 3 ряда за один шаг движения корабля на 1 знакоместо. Когда Вы напишете эту игру, Вы будете готовы приступить к написанию XONIX-а, ПЭКМАНА или тетриса. Итого на освоение ассемблера до полноценного программиста для РК86 у Вас уйдет примерно один месяц. Лучше пользоваться удобным эмулятором, а не реальным РК86. Желательно использовать эмулятор с встроенным отладчиком.

    А вообще, самый главный секрет в освоении любого языка программирования - это делать на нём практическую программу, а не пытаться читать учебники. Как только Вы выучили работу всех команд, то о любой литературе вообще забудьте. И всегда полезно изучать чужие программы и пытаться найти в них что-то полезное.

    А чтобы изучить СИ, ничего лучше кроме Кернигана и Ритчи до сих пор не придумали. Секрет заключается в том, что нельзя просто читать. Надо обязательно самостоятельно делать ВСЕ учебные задачи, что там даны. И лучше использовать Кернигана и Ритчи первого издания, где есть сборник задач по СИ - "Керниган Б., Ритчи Д. Язык программирования СИ. Задачи по языку СИ" М: Финансы и статистика, 1985. В этой книге устаревший синтаксис описания функций, но это не важно. Т.к после изучения СИ, Вы должны взять второе издание этой книги: "Керниган Б., Ритчи Д. Язык программирования СИ. Задачи по языку СИ" М: Финансы и статистика, 1992. И усвоить по ней новые правила в синтаксисе языка и изменения в стандартных INCLUDE-файлах.

    Практика показывает, что при серьёзном отношении СИ полностью осваивается за месяц (только за такой срок голова начинает работать на СИ). Но опять-таки, если Вы сразу же после изучения языка не напишете текстовый редактор или НОРТОН на СИ, то через пару месяцев всё забудется. И при изучении удобнее использовать не СИ для 8-ми разрядки, а СИ для IBM PC с удобным IDE и отладчиком. Если надо, после изучения языка, Вы сможете пользоваться и компилятором СИ для Z80 или КР580, хотя применительно к РК86, СИ - это нонсенс (включая BEST-СИ для РК86). На СИ невозможно написать полезную программу для РК86, слишком низка скорость и мало ОЗУ. Поэтому, если стоит задача писать программы именно для РК86, то на СИ "не заморачивайтесь". Для 8-ми разрядки хорошо зарекомендовал себя только ЯВУ самого низкого уровня PL/M. Только на этом ЯВУ были написаны реально используемые программы.
    Последний раз редактировалось barsik; 21.03.2017 в 00:17.

  8. #7
    Guru Аватар для zx-kit
    Регистрация
    11.04.2009
    Адрес
    г. Санкт-Петербург
    Сообщений
    3,603
    Записей в дневнике
    15
    Спасибо Благодарностей отдано 
    19
    Спасибо Благодарностей получено 
    65
    Поблагодарили
    51 сообщений
    Mentioned
    1 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Я изучал статьи Г. Штефана в журналах "Радио" за 1989 и 1990 г. в разделе "Микропроцессорная техника и ЭВМ". Мне очень помогли начать программировать.
    В 1 номере 1989 г стр.33 начало статей по программированию для начинающих для "Радио-86РК" - "АССЕМБЛЕР: ОСНОВЫ ПРОГРАММИРОВАНИЯ ИЛИ ПЕРВЫЕ ПРАКТИЧЕСКИЕ ШАГИ".
    Архив журнала Радио.

    Также в 1988 г:
    «Ассемблер: краткий курс для начинающих», Г.Штефан, №11 и 12.
    Последний раз редактировалось zx-kit; 01.01.2017 в 06:16.
    "L-256"

  9. #8
    Member
    Регистрация
    09.03.2011
    Адрес
    Краснодар
    Сообщений
    85
    Спасибо Благодарностей отдано 
    14
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    3 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    На мой вкус лучше всего использовать в качестве литературы 2 книги:
    1) книга авторов компьютера (выше была ссылка), в ней вся специфика компа рассказывается
    2) по асму 8080 отличная книга (с кучей примеров) - Левенталь Л., Сэйвилл У. Программирование на языке ассемблера для процессоров 8080 и 8085
    С уважением, Андрианов Игорь

  10. #9
    Member
    Регистрация
    26.04.2011
    Адрес
    Одесса, Украина
    Сообщений
    34
    Спасибо Благодарностей отдано 
    4
    Спасибо Благодарностей получено 
    8
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Спасибо отписавшимся за наводки)

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

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

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

Похожие темы

  1. Литература о ИИ
    от Viktor2312 в разделе Техническая литература
    Ответов: 3
    Последнее: 28.11.2014, 19:07
  2. Литература
    от Helloween в разделе Commodore 16/64/128
    Ответов: 1
    Последнее: 02.10.2013, 20:50
  3. Литература
    от Helloween в разделе Atari
    Ответов: 3
    Последнее: 02.09.2010, 11:58
  4. ZX Литература
    от AAA в разделе Пресса
    Ответов: 0
    Последнее: 23.04.2008, 15:12
  5. Литература
    от Lunohod1 в разделе Пресса
    Ответов: 2
    Последнее: 25.05.2007, 03:14

Ваши права

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