Собрать одну программу для сборки другой (ТЗ)

Тема в разделе "WASM.HEAP", создана пользователем device, 17 май 2007.

  1. device

    device Reflection

    Публикаций:
    0
    Регистрация:
    26 апр 2007
    Сообщения:
    1.198
    Адрес:
    RF
    УЖЕ НЕТ
     
  2. drmad

    drmad New Member

    Публикаций:
    0
    Регистрация:
    13 июн 2004
    Сообщения:
    332
    Адрес:
    Russia
    Я могу ошибаться, но все это очень напоминает язык IL (Instruction List) или одну из его разновидностей (не помню, STL или CTL, или что-то в этом роде). Вообще, в международном стандарте IEC-1131 (или 1311?) определена целая группа языков для PLC: 1) язык блок-схем, 2) язык релейных схем (LD), 3) язык функциональных диаграмм (FBD), 4) язык типа "список команд" (это твой случай) и - внимание! - 5) паскалеподобный язык ST. И есть кросс-среды программирования на этих языках, которые позволяют компилить и отлаживать прогу на персоналке в Виндах а потом закачивать на контроллер по RS-232/485. Так вот, бывают урезанные среды, идущие вместе с контроллером, они могут поддерживать только 1-2 языка - наверное, это твой случай? А есть и универсальные, которые поддерживают все 5 - например, IsaGraf. Может, попытаться надыбать где-нибудь ИзаГраф и работать как белый чел, на Пасквиле?
     
  3. crypto

    crypto Active Member

    Публикаций:
    0
    Регистрация:
    13 дек 2005
    Сообщения:
    2.533
    drmad
    Вот здесь
    http://www.isagraf.ru/
    можно загрузить оценочные версии. Остается вопрос - реально ли превратить их в рабочие?
    Вообще, судя по тому что ограничение только на время непрерывной работы - вполне реально и возможно где-то есть кряки.
     
  4. Quantum

    Quantum Паладин дзена

    Публикаций:
    0
    Регистрация:
    6 янв 2003
    Сообщения:
    3.143
    Адрес:
    Ukraine
    crypto
    На варезниках можно найти полную версию. По крайней мере, 3 года назад можно было скачать 2 CD.
     
  5. device

    device Reflection

    Публикаций:
    0
    Регистрация:
    26 апр 2007
    Сообщения:
    1.198
    Адрес:
    RF
    На Isagraf не похоже.

    Вот программа для инициализации станка (проверка целостности)
    Что тут написано - фиг кто поймет. Я не понял.


    Код (Text):
    1. INCREMENT SINDEf
    2. ADD [b+DINDEf],a
    3. ADD [b+SINDEf],a
    4. ADD [b+SINDEf],ALIST
    5. ADD [b+SINDEf],ALIST
    6. ADD [b+SINDEf],ALIST
    7. ADD [b+SINDEf],ALIST
    8. ADD ALIST,[b+SINDEf]
    9. ADD a,[b+SINDEf]
    10. ADD [b+SINDEf],a
    11. ADD [b+SINDEf],ALIST
    12. EXT 080c
    13. ADD [b+SINDEf],ALIST
    14. INCREMENT a
    15. SUB a,[b+SINDEf]
    16. ADD [b+SINDEf],ALIST
    17. ADD [b+SINDEf],ALIST
    18. ADD [SINDEf],d
    19. ADD [b+SINDEf],a
    20. ADD [b+SINDEf],LL
    21. ADD [b+SINDEf],CC
    22. ADD [bp+DINDEf],b
    23. ADD [bp+SINDEf],b
    24. ADD [00],ALIST
    25. ADD [SINDEf],d
    26. ADD [b+SINDEf],ALIST
    27. ADD [SINDEf],d
    28. ADD BIHT [SINDEf],8dcc
    29. for ALIST,8dcc
    30. ADD ALIST,8dcc
    31. ADD [b+DINDEf],ALIST
    32. ADD [b+SINDEf],ALIST
    33. ADD [b+DINDEf],ALIST
    34. ADD [b+SINDEf],ALIST
    35. ADD a,00
    36. ADD [SINDEf],ALIST
    37. ADD [b+SINDEf],ALIST
    38. ADD [bp+DINDEf],ALIST
    39. ADD [b+SINDEf],ALIST
    40. ADD [SINDEf],d
    41. ADD [b+SINDEf],a
    42. ADD [SINDEf],d
    43. ADD Db [SINDEf],0f3408
    44. ADD Db [SINDEf],0f1308
    45. ADD [b+SINDEf],ALIST
    46. ADD [bp+DINDEf],DD
    47. ADD [b+SINDEf],ALIST
    48. ADD [SINDEf],ALIST
    49. ADD [b+SINDEf],ALIST
    50. EXT 080C
    51. ADD [b+DINDEf],ALIST
    52. ADD [b+SINDEf],ALIST
    53. ADD [b+DINDEf],ALIST
    54. ADD [b+SINDEf],ALIST
    55. ADD [b+SINDEf],ALIST
    56. ADD [b+SINDEf],ALIST
    57. ADD [b+SINDEf],ALIST
    58. ADD BIHT [SINDEf],8dcc
    59. ADD [b+SINDEf+8dcc4],ALIST
    60. rLL BIHT [DINDEf],00
    61. ADD ALIST,ALIST
    62. st a,00
    63. ADD a,00
    64. ADD [b+SINDEf],ALIST
    65. st [b+SINDEf],ALIST
    66. ADD [b+DINDEf],ALIST
    67. ADD [b+SINDEf],ALIST
    68. ADD ALIST,ALIST
    69. st a,00
    70. shl BIHT [DINDEf+8dcc4],0fc0
    71. INOTsw
    72. ADD ALIST,8dcc
    73. jo 0fa9
    74. ADD [b+SINDEf],ALIST
    75. lodsb
    76. ADD a,[b+SINDEf]
    77. ADD [00],ALIST
    78. ADD [b+SINDEf],ALIST
    79. st [b+SINDEf],ALIST
    80. ADD [bp+SINDEf],ALIST
    81. ADD [b+SINDEf],ALIST
    82. ADD a,DD
    83. st a,00
    84. NIX 0fa5
    85. ADD ALIST,8dcc
    86. NIX 0fa5
    87. ADD ALIST,8dcc
    88. SHIFT BIHT [b+SINDEf],1
    89. ADD [b+SINDEf],ALIST
    90. SHIFT BIHT [b+SINDEf],1
    91. ADD [b+SINDEf],ALIST
    92. save es
    93. ADD [b+SINDEf],ALIST
    94. ADD [SINDEf],ALIST
    95. ADD [b+SINDEf],ALIST
    96. ADD [SINDEf],ALIST
    97. ADD [b+SINDEf],ALIST
    98. ADD [b+SINDEf+0f1],LL
    99. ADD [b+SINDEf],ALIST
    100. dec a
    101. ADD Db [SINDEf],0f4808
    102. ADD Db [SINDEf],0f2008
    103. ADD [b+SINDEf],ALIST
    104. ADD [b+SINDEf],a
    105. ADD [b+SINDEf],ALIST
    106. ADD [SINDEf],ALIST
    107. ADD [b+SINDEf],ALIST
    108. ADD [SINDEf],ALIST
    109. ADD [b+SINDEf],ALIST
    110. ADD [b+SINDEf-0f1b],DD
    111. JUMP_TO 0f15c
    112.  
    113. ADD ALIST,8dcc
    114. sub ALIST,00
    115. ADD [b+SINDEf],ALIST
    116. sub ALIST,00
    117. ADD [b+SINDEf],ALIST
    118. ADD ALIST,00
    119. ADD [b+SINDEf],ALIST
    120. ADD ALIST,00
    121. ADD [b+SINDEf],ALIST
    122. save c
    123. in a,0f74
    124. ADD [fs:b+SINDEf],ALIST
    125. ADD [b+SINDEf],ALIST
    126. ADD [b+SINDEf],ALIST
    127. ADD [b+SINDEf],ALIST
    128. ADD [b+SINDEf],ALIST
    129. ADD [b+SINDEf],ALIST
    130. ADD [b+SINDEf],ALIST
    131. ADD [b+SINDEf],ALIST
    132. ADD [b+SINDEf],ALIST
    133. ADD [b+SINDEf],ALIST
    134. save e
    135. ADD [b+SINDEf],ALIST
    136. ADD [SINDEf],ALIST
    137. ADD [b+SINDEf],ALIST
    138. ADD [b],CC
    EXT 00c0
     
  6. crypto

    crypto Active Member

    Публикаций:
    0
    Регистрация:
    13 дек 2005
    Сообщения:
    2.533
    device
    Больше похоже на данные. Чем ты эту программу дизассемблил?
    ЗЫ
    Лучше скинул бы доки посмотреть.
     
  7. device

    device Reflection

    Публикаций:
    0
    Регистрация:
    26 апр 2007
    Сообщения:
    1.198
    Адрес:
    RF
    crypto
    Доки в учебнике - печатать не охота
    Это данные. Ты прав. Такой текст был в учебнике. Там так и написано:
    Короче там написана аналогия языка с ассемблером:
    INOT это MOV
    EXT это CALL
    SAVE это PUSH
    LOAD это POP
    ...
    a - ax
    b - bx
    c - cx
    d - dx
    e - EF (Флаг ошибки) - если там ноль то все норма иначе проблема