Куча говна / Говнокод #25556 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
  30. 30
  31. 31
  32. 32
  33. 33
  34. 34
  35. 35
  36. 36
  37. 37
  38. 38
  39. 39
  40. 40
  41. 41
  42. 42
  43. 43
  44. 44
  45. 45
  46. 46
  47. 47
  48. 48
  49. 49
  50. 50
  51. 51
  52. 52
  53. 53
  54. 54
  55. 55
  56. 56
  57. 57
  58. 58
  59. 59
  60. 60
  61. 61
  62. 62
  63. 63
  64. 64
  65. 65
  66. 66
  67. 67
  68. 68
  69. 69
  70. 70
  71. 71
  72. 72
  73. 73
  74. 74
  75. 75
  76. 76
  77. 77
  78. 78
  79. 79
  80. 80
  81. 81
  82. 82
  83. 83
  84. 84
  85. 85
  86. 86
  87. 87
  88. 88
  89. 89
  90. 90
  91. 91
  92. 92
  93. 93
  94. 94
  95. 95
  96. 96
  97. 97
  98. 98
Переменная loffset 0 loffset!
Переменные местные жители здесь местные! Выбрано 100 (несколько) ячеек
: локальный, (смещение -)
отложить rp @ loffset @ swap -
откладывать буквально откладывать +;
: бизнес, (смещение -)
местный, отложи рп! ;
: (local DOES> @ local, отложить @;
: f> r r> rp @ 1 float - dup rp! е! > г;
: (flocal DOES> @ local, отложить f @;

: нечего делать ;
: ralign r>
START rp @ [1 плавает 1-] Буквально и
WHILE ['ничего не делать> тело] ALiteral> r
REPEAT> r;

: <local (- sys1)
текущие @ @ loffset @ местные жители @
больше 0 = ЕСЛИ отложено до ТО; мгновенный
: местный: (-)
откладывать> последние новости здесь местные жители @ дп!
ячейка loffset +! Создать loffset @, немедленный (локальный
вот местные жители! дп! lastcfa! прошлой! ; мгновенный
: flocal: (-)
Последние новости здесь местные жители @ дп!
START loffset @ 0 1 плавает падение FM / мод, пока
0 отложено Буквально откладывай> 1 ячейку + клетки! повторение
отложить f> r Создать loffset @, немедленный (flocal
вот местные жители! дп! lastcfa! прошлой! ; мгновенный
: local> (sys1 - sys2); мгновенный
: локальный (sys2 -)
местные жители! dup delocal
Loffset! ток @! ; мгновенный
: TO> in @ 'dup @ [' (local> cell body +] ALiteral =
IF> body @ local, отложить! падение
ELSE dup @ ['(flocal> cell body +] ALiteral =
IF> body @ local, отложить ф! падение
В противном случае, смотрите> в! отложить на потом; мгновенный

: DO 2 ячейки loffset +! отложить DO; немедленное ограничение
:? DO 2 ячейки loffset +! отложить? ДЕЛАТЬ; немедленное ограничение
: Для 2 ячеек loffset +! выделить для; немедленное ограничение
: LOOP -2 ячейки loffset +! Задержка LOOP; немедленное ограничение
: + LOOP -2 ячейки loffset +! отложить + LOOP; немедленное ограничение
: СЛЕДУЮЩИЙ -2 loffset + клетки! отложите СЛЕДУЮЩУЮ; немедленное ограничение
:> R 1 клетки loffset +! отложить в сторону> R; немедленное ограничение
: R> -1 ячейки loffset +! отложить R>; немедленное ограничение

Местные жители высокого уровня 19aug93py

: {отложить <местное -1
НАЧАЛО> в @ name dup c @ 1 = swap 1+ c @ '| = и к
drop> in @> r
НАЧНИТЕ dup 0 <0 = WHILE> в! отложить местное: REPEAT drop
d> в! отложить местное>; немедленное ограничение

: F {отложить <местный -1
НАЧАЛО> в @ name dup c @ 1 = swap 1+ c @ '| = и к
drop> in @> r
НАЧНИТЕ dup 0 <0 = WHILE> в! Отложить Flocal: REPEAT DROP
d> в! отложить местное>; немедленное ограничение

'местный; псевдоним} немедленное ограничение

\ ANS Locals 19aug93py

Создайте 5 локальных ячеек, выберите их
: (местный) (адрес)
местный @ 0 =
Если вы отложите в сторону <local local on
3 локальных ячейки + 2! местная ячейка + 2! ЗАТЕМ
dup IF linestart @> r исходная строка #> r загрузочный файл @> r
blk @> r> tib @> r #tib @ dup> r> in @> r

> Тиб +! dup #tib! > Tib @ Swap Move
> выкл blk выкл loadfile выкл -1 linestart!

отложить местное:

d> в! r> #tib! > Тиб! r> blk!
r> загрузочный файл! r> Loadline! r> linestart!
ELSE 2-капельные локальные клетки + 2 @ локальные 3 клетки + 2 @
отложить местный>
2 локальных ячейки + 2! местная ячейка +! ЗАТЕМ;

:? местный;
местный @
IF с местными ячейками + @ с местными 2 ячейками + 2 @
отложить местное; местный от ТОГО;

:; ?местный; отложить; ; немедленное ограничение
:> Местный; откладывать делает>; мгновенный
: EXIT inlocal @ IF 0 delocal, TO откладывает EXIT; мгновенный

: местные жители |
НАЧАТЬ имя dup c @ 1 = больше 1+ c @ '| = и 0 = WHILE
читать (локально) REPEAT 0 (локально); немедленное ограничение

Запостил: BOKCEJIbHblu_nemyx BOKCEJIbHblu_nemyx, (Updated )

Комментарии (5) RSS

  • см. требуется

    get-current и see-voc определения

    : simple-see-word {addr -}
    xpos off addr hex. адресная ячейка + адрес @ .word drop;

    : simple-see-range (addr1 addr2 -) \ gforth
    поменять местами +
    я просто вижу слово
    клетка + петля;

    : see-code-next-inline {addr1 addr2 - addr3}
    \ декомпилировать, начиная с addr1, пока не будет найден встроенный примитив,
    \ или addr2 достигнут; addr3 - это addr2 или следующий встроенный
    \ примитивный
    addr1 begin {addr}
    addr addr2 u <время
    addr @ dup decompile-prim = время
    addr cr simple-see-word
    сотовый адрес +
    повторите тогда
    адрес;

    : see-code-range {addr1 addr2 -} \ gforth
    cr addr1 begin {a}
    простое слово
    cell + addr2 see-code-next-inline {b}
    b addr2 u <while
    a @ b @ over - на диск
    б
    репетиция;

    текущий набор

    : simple-see ("имя" -) \ gforth
    \ G - простой декомпилятор, который ближе к @code {dump}, чем @code {see}.
    \ !! NEXT-HEAD сейчас слишком оптимистичен (см.
    \ комментарий в голову?)
    '> body dup next-head simple-see-range;

    : see-code ("имя" -) \ gforth
    \ G as @code {simple-see}, но также показывает динамический собственный код для
    \ G встроенные примитивы (кроме последних).
    '> body dup next-head see-code-range;

    предыдущий
    Ответить

Добавить комментарий

Я, guest, находясь в здравом уме и твердой памяти, торжественно заявляю:

    А не использовать ли нам bbcode?


    8