1. Список говнокодов пользователя Mihip

    Всего: 4

  2. Куча / Говнокод #18469

    +138

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    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
    /*
    
    Исходный код бутлоадера непонятными букафками
    vk.com/wctstudio
    
    */
    
    Lp BP hm	// В регистр SI помещаем адрес сообщения
    Pi AL aa	// Вызываем функцию печати строки
    Pl OP		// Вечный цикл для корректной работы программы
    
    /* Процедура печати символа (процедура 1) */
    
    Le AP		// Помещаем в регистр AH число AP (15). Объясняем БИОС-у то, 
    		// что нам нужно вывести один символ на экран. В регистре AL
    		// хранится ASCII значение нашего сообщения
    Lh AA		// В регистр BH - 0, соответственно, это и есть номер страницы
    Ld AH		// Ну а в регистр BL - 7, это значит, что у нас будет выводиться
    		// светло-серый текст на черном фоне
    
    Mn BA		// Как только видим Mn - сразу вспоминаем, что это прерывание
    		// На данный момент это прерывание 16 (десятичная система)
    		// а в hex - знакомое нам прерывание 0x10.
    		// Это прерывание BIOS - видео сервис
    
    Md		// Выходим из процедуры
    
    /* Процедура вывода строки на экран (процедура 2) */
    
    // вывод символа (процедура 3)
    
    Ik AE		// Помещаем в регистр AL значение из SI
    Eg		// Инкренмент (увеличение на единицу) регистра SI
    
    Ai MA		// Если значение регистра AL - 0 (т.е. строка закончилась), то
    He AF		// заканчиваем выполнение программы (выполнение процедуры 4)
    		// - 5 байт вперед на команду Md (выход из программы)
    
    Pi PN oo	// Если же строка не закончилась, то выполняем процедуру 1
    		// т.е. выводим символ, который находится в AL
    
    Pl OE           // Берем следующий символ из строки (выполнение процедуры 3)
    
    Md		// Все, закругляемся и выходим из программы
    
    FH GD HE CA	// ASCII: Wct (пробел)
    GO GP GF CA 	// 	  one (пробел)
    GM GO HG GF	//	  love
    Aa		// Конец строки обязан заканчиваться нулем, т.е. Aa :)
    
    /* У нас осталось свободное место, до 512 байт нам нужно написать недостающие Aa (0) */
    
    Aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
    aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa 
    aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa 
    aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa 
    aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa 
    aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa 
    aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa 
    aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa 
    aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa 
    aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa 
    aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa 
    aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa 
    aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa 
    aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa 
    aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa 
    aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa 
    aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa 
    aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa 
    aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa 
    aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa 
    aa aa aa aa aa aa aa
    
    // До 512 байт нам не хватает всего двух байтов..
    
    Ff KK		// FF KK - подпись загрузчика, чтобы компьютер понял,
    		// что это загрузчик, и его необходимо загрузить в
    		// память. В windows есть подписи "MZ" & "PE", а тут
    		// такое вот дело.

    Не многие поймут этот код. Вернее, не многие лишь поймут код сей. Зачем это? Отвечаю: для того, чтобы помять моск.
    github.com/Mihip/Wct

    Mihip, 10 Июля 2015

    Комментарии (3)
  3. Assembler / Говнокод #17545

    +114

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    CFG ; start: scasb
    DCG ; salc
    AEEAFF ; and al,'\'-'/'
    AAEAFO ; add al,'/'
    DBFAFB ; int 29h
    DFDDGG ; jmp start

    Генератор лабиринта на Wct.

    Mihip, 29 Января 2015

    Комментарии (34)
  4. Assembler / Говнокод #17539

    +145

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    add ax,1 ; Добавляем в ax 1 (не знаю, почему он так сделал, МЕДЛЕННО И 3 БАЙТА), можно было же inc ax
    add ax,1
    add ax,1
    add ax,1
    add ax,1
    add ax,1
    add ax,1
    add ax,1
    add ax,1
    mov ax,9 ; А теперь я понял тщетность бытия и те потраченные байты выше.

    Самый лучший говнокод новичка, который я видел.

    Mihip, 28 Января 2015

    Комментарии (10)
  5. Assembler / Говнокод #17538

    +198

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    org 100h ; DOS, чёрной пеленой покрытый DOS...
    
    delGovnocode:
    mov eax,govnokod ; Помещаем в EAX говнокод
    xor eax,eax ; Обнуляем EAX
    
    govnokod db "AllGovnocodeInTheWorld" ; говнокод

    Самый эффективный способ уничтожения говнокода, который является говнокодом.

    Mihip, 28 Января 2015

    Комментарии (20)