User Tag List

Показано с 271 по 280 из 342

Тема: PASCAL + MACRO11 (УКНЦ-ДВК).

Древовидный режим

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

    Регистрация
    20.12.2005
    Адрес
    Москва
    Сообщений
    2,051
    Спасибо Благодарностей отдано 
    1,142
    Спасибо Благодарностей получено 
    1,473
    Поблагодарили
    525 сообщений
    Mentioned
    20 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Oleg N. Cher Посмотреть сообщение
    Нашёл вот такую интересную ссылку:



    Что позволяет предположить, что есть утилита OMSI Improver, которая умеет оптимизировать выхлоп после OMSI Pascal, да ещё и весьма неслабо. Это что-то вроде peephole-оптимизатора, заменяющего по встроенному набору правил последовательности асм-инструкций на такие же по функциональности, но более компактные. Мне конечно интересно было бы увидеть эту утилиту, если она найдётся.

    Пока я только предположу, что она умеет оптимизировать несколько вызовов Write в один.
    В документации написано что она делает -
    The utility program IMP decrases the size of the object code produced by Pascal-1 by replacing branch/jump combinations with sigle branches when possible.
    То есть, если идёт подряд BEQ xxxx / JMP yyyy (3 слова) - если yyyy отстоит недалеко, то это заменяется на BNE yyyy (1 слово).
    Такая конструкция встречается в каждом IF, FOR, WHILE.

    - - - Updated - - -

    Вообще в этом Паскале IF, WHILE - относительно лёгкие, а вот FOR довольно громоздкий:
    Код:
    	FOR I:=1 TO 10 DO BEGIN
    	    WRITELN;
    	END;
    Код:
    ; 	FOR I:=1 TO 10 DO BEGIN
    	MOV 	%5,-(6)
    	ADD	#xxxx,%0
    	MOV 	#1,-(6)
    	MOV 	#10,-(6)
    	MOV 	2(6),@4(6)
    L1:
    	CMP 	@4(6),(6)
    	BLE	.+6
    	JMP	L2
    ; 	    WRITELN;
    	JSR	%7,$B36
    ; 	END;
    	INC 	@4(6)
    	JMP	L1
    L2:
    	ADD	#6,%6
    L0:
    Итого - 19-21 слов на обеспечение цикла FOR (на два слова меньше если переменная объявлена первой).
    Последний раз редактировалось nzeemin; 07.04.2021 в 21:13.

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

    Oleg N. Cher(07.04.2021)

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

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

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

Похожие темы

  1. "Исходники" Turbo Pascal нужны кому ?
    от esl в разделе Программирование
    Ответов: 2
    Последнее: 19.10.2018, 11:33
  2. Продам МС5310 блок дисководов к УКНЦ+КМД УКНЦ
    от Mad Killer/PG в разделе Барахолка (архив)
    Ответов: 7
    Последнее: 19.03.2012, 11:27
  3. в розыске дисковая версия Pascal.
    от goblinish в разделе Программирование
    Ответов: 18
    Последнее: 16.08.2011, 16:30
  4. Pascal
    от Andrew771 в разделе Программирование
    Ответов: 22
    Последнее: 24.05.2011, 21:20
  5. Скопировать/вставить из/в HiSoft Pascal в эмуляторе
    от kit в разделе Программирование
    Ответов: 1
    Последнее: 05.02.2010, 15:35

Метки этой темы

Ваши права

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