User Tag List

Страница 4 из 122 ПерваяПервая 12345678 ... ПоследняяПоследняя
Показано с 31 по 40 из 1564

Тема: Программирование на УКНЦ как?

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    14,374
    Спасибо Благодарностей отдано 
    1,695
    Спасибо Благодарностей получено 
    2,214
    Поблагодарили
    868 сообщений
    Mentioned
    69 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    На счет программирования на асме под MACRO11.
    Есть ли в нем обозначение для представления шестнадцатиричных чисел? Для восмиричных нашел ^O перед числом, а для шестнадцатиричных не нашел. Radix не предлагать.

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

  3. #2

    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,805
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    147
    Поблагодарили
    78 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    На счет программирования на асме под MACRO11.
    Есть ли в нем обозначение для представления шестнадцатиричных чисел? Для восмиричных нашел ^O перед числом, а для шестнадцатиричных не нашел. Radix не предлагать.
    ^B - Binary
    ^C - Complement
    ^D - Decimal
    ^F - Floating
    ^O - Octal
    ^R - Radix50

  4. #3

    Регистрация
    27.05.2009
    Адрес
    СССР, Новосибирск
    Сообщений
    5,850
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    289
    Поблагодарили
    233 сообщений
    Mentioned
    30 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    На счет программирования на асме под MACRO11.
    Есть ли в нем обозначение для представления шестнадцатиричных чисел? Для восмиричных нашел ^O перед числом, а для шестнадцатиричных не нашел. Radix не предлагать.
    ^X

    ---------- Post added at 11:36 ---------- Previous post was at 11:07 ----------

    Цитата Сообщение от Voxel Посмотреть сообщение
    Может кто знает. Решил познакомится с Фортраном. Пролистал книгу по нему (именно по 77 версии). В общем то оказался тот же Бейсик, ни чего в нем сложного нет.
    Возникли такие вопросы:
    1. Толи я пропустил, то ли не уловил. Я так понимаю Фортран транслируемый язык. То есть готовую программу нельзя откомпилировать в запускаемый файл?

    2. Не нашел в книге, возможно это не реализовано. Может ли Фортран работать с портами и памятью? Можно ли делать вставки на ассемблере?
    Фортран только транслятор (или компилятор - в данном случае это одно и то же). Бейсики есть и трансляторы (для RT-11 не видел) и интерпретаторы.
    Процедура работы с фортрановской программой от исходника до готовой програмы такая (на примере того же RT-11): компиляция (команда FORTRAN), сборка (команда LINK). К примеру:
    Код:
    .FORT FORPRG !КОМПИЛЯЦИЯ ПРОГРАММЫ
    
    .LIN FORPRG/LINK:SY:FORLIB !СБОРКА ПРОГРАММЫ
    
    .!ИЛИ ОДНОЙ КОМАНДОЙ:
    
    .EXE FORPRG/LINK:SY:FORLIB !КОМПИЛЯЦИЯ, СБОРКА, ЗАПУСК
    
    .EXE FORPRG/NORU.... !АНАЛОГИЧНО НО БЕЗ ЗАПУСКА
    Здесь мы при сборке указываем библиотеку фортрановских подпрограмм.
    Библиотека обычно называется FORLIB, но для F77 может называться F77OTS (обычно используется если в системе одновмеренно есть и F77 и FIV).

    В RT-11 версий 5.6 и 5.7 компилятор фортрана для команды FORTRAN выбирается командой SET FORTRA F77 или SET FORTRA FORTRA.

    Сложного в фортране действительно ничего нет, но надо помнить о некоторых особенностях языка (некоторые из них описаны в прошлых письмах). Типичные ошибки тех, кто привык к C или паскалю:

    CALL SUBR(1) - Многие думают, что это вызов подпрограммы SUBR с аргументом 1. Для фортрана это верно только если подпрограмма SUBR не меняет переменную, используемую для передачи параметра. Если меняет - изменение будет действовать при следующем вызове из этого же места.

    2. FORMAT('TEXT') - данный формат не напечатает строчку "TEXT" - первый символ в строке используется для форматирования, к примеру:

    0 или пробел - печать с новой строки
    1 - печать с новой страницы (на терминале отрабатывает 8 переносов строки, на принтере пробрасывает бумагу до следующей страницы)
    + - печать с той же строки на которой стоим

    Также для программирования на фортране полнзно изучить описание подпрограмм системной библиотеки - там много нужного. В том числе есть подпрограммы для работы с памятью (насчет портов, на PDP-11 такого понятия отдельно нету).

    Документация на английском:

    RT-11 V5.6: System Subroutine Library Manual
    RT-11 V5.6: System Macro Library Manual
    RT-11 V5.6: System Internals Manual
    PDP-11 MACRO-11 Language Reference Manual (MACRO-11 Version 5)
    PDP-11 FORTRAN IV Language Reference Manual (FORTRAN IV Version 2.6)
    PDP-11 FORTRAN 77 Language Reference Manual (FORTRAN 77 Version 5.0)

    на русском:

    РАФОС-ПЛЮС: Системные таблицы и библиотеки. Руководство программиста.
    ФОДОС-2: Программирование периферийных устройств.
    ФОДОС-2: Ассемблер. Руководство программиста.
    ФОДОС-2: Системная макробиблиотека. Руководство программиста.
    ФОДОС-2:Монитор системы. Руководство программиста.


    ---------- Post added at 11:47 ---------- Previous post was at 11:42 ----------

    Бр-р-р! Тяжко в форуме редактировать написанное - еле управился
    Последний раз редактировалось form; 21.04.2011 в 10:20.
    PDP-11/83, Электроника МС0511 (УК-НЦ), DECserver 90M
    Q-Bus: H9278-A, DLV11-J, DZQ11, DHV11, DELQA-M, LPV11, CQD-420/TM, DRV11
    PMI: KDJ11-BF, MSV11-JE
    VT220, CM7209

  5. #4

    Регистрация
    22.07.2007
    Адрес
    St.Petersburg
    Сообщений
    603
    Спасибо Благодарностей отдано 
    1
    Спасибо Благодарностей получено 
    14
    Поблагодарили
    9 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от form Посмотреть сообщение
    CALL SUBR(1) - Многие думают, что это вызов подпрограммы SUBR с аргументом 1. Для фортрана это верно только если подпрограмма SUBR не меняет переменную, используемую для передачи параметра. Если меняет - изменение будет действовать при следующем вызове из этого же места.
    Есть книжка на тему:

    http://www.kodges.ru/97371-oshibki-l...-fortrane.html

    После прочтения открываются БЕЗДНЫ ЗНАНИЯ. Начинаешь понимать, насколько глубокий и мощный язык Фортран. Но в книжке больше ориентация на ЕС-овский фортран, DEC-овская реализация может отличаться.

    Этот пользователь поблагодарил AlecV за это полезное сообщение:

    hobot(08.04.2021)

  6. #5

    Регистрация
    27.05.2009
    Адрес
    СССР, Новосибирск
    Сообщений
    5,850
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    289
    Поблагодарили
    233 сообщений
    Mentioned
    30 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от AlecV Посмотреть сообщение
    Есть книжка на тему:

    http://www.kodges.ru/97371-oshibki-l...-fortrane.html

    После прочтения открываются БЕЗДНЫ ЗНАНИЯ. Начинаешь понимать, насколько глубокий и мощный язык Фортран. Но в книжке больше ориентация на ЕС-овский фортран, DEC-овская реализация может отличаться.
    Да, отличная книжка.

    Я изучал по какой-то старой толстой книге и когда пришел на DEC, оказалось, что там все также, причем в книге упоминались даже TYPE/PRINT/PUNCH

    Вот GNU F77 как-то посмотрел - там ни тебе с аргументами разобраться ни фортрановский (!) format character не поддерживается
    Про TYPE/PRINT/PUNCH говорить даже не стану - и так ясно
    Хорошо хоть WRITE(*) работает

    --
    GOD is REAL, unless declared INTEGER (правило фортрана)

    ---------- Post added at 15:08 ---------- Previous post was at 14:37 ----------

    И раз пошла такая пьянка - пример для современного gcc на обычных i386 машинах

    Код:
    #include <stdio.h>
    
    int
    main(void)
    {
            char c = 128;
    
            if (c != 128)
                    printf("Shit happens!\n");
    
            return (0);
    }
    Как можно догадаться, программа напечатает
    "Shit happens!"
    Последний раз редактировалось form; 21.04.2011 в 11:41.
    PDP-11/83, Электроника МС0511 (УК-НЦ), DECserver 90M
    Q-Bus: H9278-A, DLV11-J, DZQ11, DHV11, DELQA-M, LPV11, CQD-420/TM, DRV11
    PMI: KDJ11-BF, MSV11-JE
    VT220, CM7209

  7. #6

    Регистрация
    27.05.2009
    Адрес
    СССР, Новосибирск
    Сообщений
    5,850
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    289
    Поблагодарили
    233 сообщений
    Mentioned
    30 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Еще пример - использование прерываний в фортрановской программе.
    Коментарии в ассемблерном коде.

    В данном примере прога тупо крутится в цикле, печатая всякую фигню, при нажатии CTRL/C выходит.
    Последний раз редактировалось form; 07.06.2014 в 18:34.
    PDP-11/83, Электроника МС0511 (УК-НЦ), DECserver 90M
    Q-Bus: H9278-A, DLV11-J, DZQ11, DHV11, DELQA-M, LPV11, CQD-420/TM, DRV11
    PMI: KDJ11-BF, MSV11-JE
    VT220, CM7209

  8. #7

    Регистрация
    14.06.2017
    Адрес
    г. Воронеж
    Сообщений
    187
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    10
    Поблагодарили
    3 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от form Посмотреть сообщение
    Еще пример - использование прерываний в фортрановской программе.
    Коментарии в ассемблерном коде.
    В данном примере прога тупо крутится в цикле, печатая всякую фигню, при нажатии CTRL/C выходит.
    а как то можно этот пример посмотреть?
    мне нужно немного другое, по CTRL/B выйти из цикла в определённое место в программе, программка на ассемблере.

  9. #8

    Регистрация
    27.05.2009
    Адрес
    СССР, Новосибирск
    Сообщений
    5,850
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    289
    Поблагодарили
    233 сообщений
    Mentioned
    30 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от gfd71 Посмотреть сообщение
    а как то можно этот пример посмотреть?
    Если ссылки нет (возможно был аттач файла), то не сохранилось.

    Цитата Сообщение от gfd71 Посмотреть сообщение
    по CTRL/B выйти из цикла
    CTRL/B не лучшая комбинация для RT-11 - в FB/XM/ZM монторах она используется.
    Также нежелательно использовать CTRL/A (редкий случай - поддержка графдисплея), CTRL/F (FB/XM/ZM), CTRL/O, CTRL/Q, CTRL/S, CTRL/X (FB/XM/ZM) - они тоже используются в RT-11, некоторые варианты невозможно перехватить стандартными средствами.
    Нежелательно также использовать CTRL/P - его часто используют по умолчанию терминальные программы (VTCOM например) и RTEM-11.
    Кроме того в "наших| ФОДОСах была привычка заменять стандартный CTRL/O на CTRL/D
    PDP-11/83, Электроника МС0511 (УК-НЦ), DECserver 90M
    Q-Bus: H9278-A, DLV11-J, DZQ11, DHV11, DELQA-M, LPV11, CQD-420/TM, DRV11
    PMI: KDJ11-BF, MSV11-JE
    VT220, CM7209

  10. #9

    Регистрация
    14.06.2017
    Адрес
    г. Воронеж
    Сообщений
    187
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    10
    Поблагодарили
    3 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от form Посмотреть сообщение
    CTRL/B не лучшая комбинация для RT-11 - в FB/XM/ZM монторах она используется.
    мне для SJ,

    ничего не сохранилось
    Последний раз редактировалось gfd71; 18.10.2017 в 17:15.

  11. #10

    Регистрация
    27.05.2009
    Адрес
    СССР, Новосибирск
    Сообщений
    5,850
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    289
    Поблагодарили
    233 сообщений
    Mentioned
    30 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от gfd71 Посмотреть сообщение
    мне для SJ
    Лучше не закладываться на SJ, а просто учитывать возможные варианты.
    А то потом рождаются мифы о том, что где-то TAB стирает символы по дороге на экране и тому подобное только от того, что не были учтены варианты

    Цитата Сообщение от gfd71 Посмотреть сообщение
    ничего не сохранилось
    Ну в сущности связь фортрана с ассемблером очень проста, а работа с прерываниями требует большой аккуратности. Ну и нужно помнить, что большая часть фортрановских операций ввода-вывода не повторновходимы, а значит их нельзя использовать в обработчике прерывания.
    PDP-11/83, Электроника МС0511 (УК-НЦ), DECserver 90M
    Q-Bus: H9278-A, DLV11-J, DZQ11, DHV11, DELQA-M, LPV11, CQD-420/TM, DRV11
    PMI: KDJ11-BF, MSV11-JE
    VT220, CM7209

Страница 4 из 122 ПерваяПервая 12345678 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Программирование на Эмуляторе. Возможно ли это?
    от Toxic в разделе Программирование
    Ответов: 10
    Последнее: 20.01.2008, 19:20
  2. Программирование Altera и JTAG
    от Mikka_A в разделе Несортированное железо
    Ответов: 7
    Последнее: 18.01.2008, 09:07
  3. Программирование и софтмейк на NES
    от Splinter в разделе Nintendo
    Ответов: 7
    Последнее: 30.06.2006, 04:31

Ваши права

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