Сейчас на форуме: zombi-vadim, zds (+4 невидимых)

 eXeL@B —› Программирование —› Альтернатива xor
<< . 1 . 2 . 3 . 4 . 5 . 6 . 7 . >>
Посл.ответ Сообщение

Ранг: 3.2 (гость)
Активность: 0=0
Статус: Участник

Создано: 05 августа 2006 03:18
· Личное сообщение · #1

Q:Как можно заменить команду xor, например через другие логические операторы или через +-*/?



Ранг: 163.7 (ветеран)
Активность: 0.070
Статус: Участник

Создано: 14 августа 2006 03:40
· Личное сообщение · #2

Ratinsh пишет:
Просто в некоторых S-Box-ах используют конструкцию Frez=F(x) xor (F(x) shl 1)

Ага, и перед выводом этой формулы - несколькол страниц о полях и кольцах, где сложение многочленов в конечном счете сводится к поразрядному xor.



Ранг: 29.5 (посетитель)
Активность: 0.010
Статус: Участник

Создано: 14 августа 2006 03:49
· Личное сообщение · #3

Rascal пишет:
Так расскажи, по каким признакам ты орпеделил, что int C; C - это объект класса int???

Если бы ты не прогуливал лекции, то сам мог бы ответить на этот вопрос. Признаков всего лишь 3:
1. Свойства.
2. Интерфейс.
3. Индивидуальность.

Первое очень просто доказать. Свойстом обьекта C можно считать его значение. Также отдельным свойством можно считать знак, если хотите.

Второе. Под интерфейсом подразумеваются методы, но никто не запрещает включить в интерфейс операторы. Если тебе так трудно это осознать, то можешь считать, что методов у этого класса нет. Класс без методов тоже имеет право на существование. Я специально не упоминаю о конструкторе и деструкторе, чтобы не давать повода для отдельного оффтопа.

Третье. 2 разных int'а физически находятся по разным адресам в памяти. Этого достаточно, чтобы поставить галочку на 3м признаке.

Rascal пишет:
я платы паяю, я программирую, я логику составляю.

Нет, я платы не паяю - это вредно. Ну, программирую немного - тоже вредно, но бросить не могу. А ты говоришь, что "программист", хотя ни ООП, ни рекурсию, ни даже булеву алгебру толком не понимаешь. Понятно, что на первом курсе многого можно не знать, но какие-то азы уже должны быть...

Rascal пишет:
Как видишь добавление xor происходит отнюдь не на последней итерации.

А если так переписать:
add(a,b) == add(a xor b, (a and b) shl 1)



Ранг: 213.5 (наставник)
Активность: 0.120
Статус: Участник
забанен

Создано: 14 августа 2006 04:01
· Личное сообщение · #4

S_T_A_S_ пишет:
на ассемблере можно утверждать, что регистр EAX - ни что иное, как объект класса

Ты шутишь или решил знаниями ассемблера блеснуть?

-----
ЗЫ: истЕна где-то рядом, Welcome@Google.com




Ранг: 163.7 (ветеран)
Активность: 0.070
Статус: Участник

Создано: 14 августа 2006 06:06
· Личное сообщение · #5

Demon666
В каждой шутке есть доля шутки ;) И ты напрасно вырвал фразу из контекста "в ООП на ассемблере...", она от этого немного поменяла смысл ;( Ну а доказательство приводить смысла не вижу - в посте Quantum'а выше можно поменять "int" на "регистр". Вот только с 3м пунктом немного не так - адрес регистра вычислить не удастся, команда "lea ecx, eax" вызовет исключение... Но думаю никто не будет спорить, что каждый регистр индивидуален =)



Ранг: 54.0 (постоянный)
Активность: 0.020
Статус: Участник

Создано: 14 августа 2006 08:36
· Личное сообщение · #6

Demon666 пишет:
S_T_A_S_ пишет:
на ассемблере можно утверждать, что регистр EAX - ни что иное, как объект класса
Ты шутишь или решил знаниями ассемблера блеснуть?

S_T_A_S_ пишет:
Demon666
В каждой шутке есть доля шутки ;)

блин! ну вы даете! хотя в рассмотрении ассемблерных примитивов как объектов что-то
есть
представьте себе:
- команды LOOP и REP/X как внешние итераторы объекта ECX
- STOSx как фабричный метод xAX
- MOV как шаблон-клон
- PUSH/POP как memento
эк меня с утра заплющило
все, ушел на работу. (ГЫЫЫ!!! ))




Ранг: 260.9 (наставник)
Активность: 0.120
Статус: Участник
John Smith

Создано: 14 августа 2006 14:58
· Личное сообщение · #7

S_T_A_S_ пишет:
к чему тут микропрограммы какие-то?

Это и есть графическая иллюстрация.

S_T_A_S_ пишет:
количество операндов не имеет никакого отношения к их разрядности.

Я напиисал, что не 4 операнда а 4 разряда у 2 операндов

S_T_A_S_ пишет:
Ещё раз повторю - нигде в стандарте языка С++ не встречается термин "метод". Да, я и сам называю порой это методами, но функция-член может быть так же и свойством (объекта).

В стандарте не укзано, но почему-то многие называют функции-члены методами. Отчего ты тут кипишь поднял, не пойму. В чём суть твоей паники???

S_T_A_S_ пишет:
А struct\class может использоваться вообще как namespace и не иметь к ООП никакого отношения.

Класс без методов есть частный случай. Они имеют прямое отношение к ООп т.к. могут выступать как базовый класс или наследоваться от другого класса. А struct это класс, все данные которого открыты, т.е. public. Так что тут ты не прав

S_T_A_S_ пишет:
Чему вас учат в универе - хз, но похоже не С++, поскольку язык этот не ОО, а мультипарадигменный.

То есть по твоим утверждениям С++ не объектно-ориентированный??? Мультипарадигменный как раз и указывает, что он ОО и не только. У тебя в прелдожении полное противоречие.

S_T_A_S_ пишет:
Какой ответ, "ты пишешь из детского сада" или "метод - это то, что вызывается через точку"? Синтаксис языка к парадигмам программирования имеет мало отношения. Можно придумать ОО-язык, где вызов метода будет записываться "hey bro call da fuckin' method", а в ООП на ассемблере можно утверждать, что регистр EAX - ни что иное, как объект класса "регистр CPU" (который инкапсулирует какие-то там микропрограммы).

Как у тебя с философией? Есть такое понятие, как истина. Истину можно узнать или из достоверных источников или из достоверного опыта. Так вот я ему показываю опыт. Студия после точки показывает методы и данные классов. Это достоверный опыт. Это конкретная IDE. Чё трендеть про что-то другое???

Quantum пишет:
1. Свойства.
2. Интерфейс.
3. Индивидуальность.

Ты забыл самое главное указать - определение класса int. Почему же мы не можем наследоваться от класса инт. Ну и расскажи, почему страустрпуп называет переменные интегральных типов переменными, а классов объектами?

Quantum пишет:
я платы паяю, я программирую, я логику составляю.

Ты опять позорно вытянул фразу из контекста. Допишу, что ты забыл взять:Rascal пишет:
Заметь, ничего из твоих возможностей без вазелина не прошло.


Quantum пишет:
А если так переписать:
add(a,b) == add(a xor b, (a and b) shl 1)

Quantum пишет:
Это рекурсивная формула. На последней итерации add можно заменить на xor.

Quantum пишет:
A = eax
B = ebx
результат в EAX
MOV EDX,EAX
MOV ECX,EBX
XOR EDX,ECX
AND EAX,EBX
SHL EAX,1
ADD EAX,EDX

Quantum пишет:
add_3 == ((a xor b) xor ((a and b) shl 1)) xor ((a xor b) and ((a and b) shl 1)shl 1)

Теперь выводы. Ты говоришь, что это рекурсивная формула. И что для правильной работы надо на последней итерации прибавить к результату биты переноса, причём через xor. Далее ты опять утверждаешь, чтьо добавление будет происходить на последней итерации, но очень хорошо видно, что добпавление идёт на каждом шаге. Теперь расскажи, гений тыы наш - это у тебя баги с пониманием рекурсии или ты где-то взял пример и не понял, как он работает.

Quantum пишет:
А ты говоришь, что "программист", хотя ни ООП, ни рекурсию, ни даже булеву алгебру толком не понимаешь. Понятно, что на первом курсе многого можно не знать, но какие-то азы уже должны быть...

Гыгыгы, ты явно меня путаешь с собой. Я не на первом курсе ;) А ООП, булевой алгеброй и рекурсией стоит поднатаскаться тебе.

S_T_A_S_ пишет:
Но думаю никто не будет спорить, что каждый регистр индивидуален =)

Я даже больше скажу - каждый бит индивидуален, а регистр как следствие =)

-----
Недостаточно только получить знания:надо найти им приложение




Ранг: 29.5 (посетитель)
Активность: 0.010
Статус: Участник

Создано: 14 августа 2006 17:20
· Личное сообщение · #8

Rascal пишет:
Истину можно узнать или из достоверных источников или из достоверного опыта.

Эмпирик ты наш, рано тебе говорить про опыт. Может быть, ты свою ось уже написал? Или хотя бы тетрис? А откуда ещё опыт может быть?

Rascal пишет:
Допишу, что ты забыл взять:Rascal пишет:
Заметь, ничего из твоих возможностей без вазелина не прошло.

Ага, получается - я виноват, что до тебя так туго доходит. Если бы ты не спешил выдёрнивать отдельные фразы и комментировать их пустыми "RTFM", "бред", "пацтулом" и т.д., а читал их вдумчиво, то не выглядел бы жалким падонком.

Rascal пишет:
Ты говоришь, что это рекурсивная формула. И что для правильной работы надо на последней итерации прибавить к результату биты переноса, причём через xor.

Это ты сам придумал про перенос и добаление xor. Я говорил, что формула рекурсивная, т.е. каждый add разворачивается в точно такую же формулу, но не до бесконечности, а пока биты не кончатся. Когда это произойдёт, add просто можно будет заменить на xor и завершить рекурсию.




Ранг: 260.9 (наставник)
Активность: 0.120
Статус: Участник
John Smith

Создано: 14 августа 2006 18:21
· Личное сообщение · #9

Quantum пишет:
Эмпирик ты наш, рано тебе говорить про опыт. Может быть, ты свою ось уже написал? Или хотя бы тетрис? А откуда ещё опыт может быть?

Ты меня убиваешь. Я тебе гворою про эксперимент. Ты чё-та про тетрис разглагольствуешь. Это мне напоминает видоизменённую отмазу - "сам дурак" =)

Quantum пишет:
Ага, получается - я виноват, что до тебя так туго доходит.

Интересные выводы. То есть опять "сам дурак". Я о том, что нет ниодного твоего утверждения, не подвергшегося сомнению. Некоторые были действительно верны (однобитное знаковое), но есть и куча, котороые ты защищаешь весьма оригинальныи способами.

Quantum пишет:
Если бы ты не спешил выдёрнивать отдельные фразы и комментировать их пустыми "RTFM", "бред", "пацтулом" и т.д., а читал их вдумчиво, то не выглядел бы жалким падонком.

Я читал достаточно вдумчиво то, что это требовало. Когда есть ошибка в описании алгоритма, считать его бестолку.

Quantum пишет:
Я говорил, что формула рекурсивная, т.е. каждый add разворачивается в точно такую же формулу, но не до бесконечности, а пока биты не кончатся. Когда это произойдёт, add просто можно будет заменить на xor и завершить рекурсию.

Алгоритм был бажный сам по себе. Ты там сделал сложение целиком регистра, а не его бит. А в последнем варианте сделал правильно, вот собсно и всё. У тебя просто не пересчитывались переносы при сложении результата с битами переноса. То есть и надо было побитово идти или делать расчёт битов переноса для результата и битов переноса и повторное сложение, если они были. И что не говори, а ты сам написал алго. Если бы словами только написал, мог бы отмазаться ;)

-----
Недостаточно только получить знания:надо найти им приложение




Ранг: 213.5 (наставник)
Активность: 0.120
Статус: Участник
забанен

Создано: 14 августа 2006 21:24
· Личное сообщение · #10

S_T_A_S_ пишет:
команда "lea ecx, eax" вызовет исключение...

Аааай мантана, ты бы еще сказал, что запись в регистр ECX любого значения c помощью lea переключает реальный режим в защищенный режим (странно, что Quantum не отреагировал “защитник справедливости” на это!?).
Quantum пишет:
Не мог же я промолчать, позволив распространять подобный бред в массы.


S_T_A_S_
Народ хочет правды! (примеры в студию!)
Вопросы:
Приведи полное описание формата (данной --> lea ecx, eax) машинной команды?
Скажи все-таки, какое конкретное это чудо вызывает исключение, даже если предположить что это существо существует в природе!? =)

-----
ЗЫ: истЕна где-то рядом, Welcome@Google.com




Ранг: 158.4 (ветеран), 123thx
Активность: 0.140.49
Статус: Участник

Создано: 14 августа 2006 22:47
· Личное сообщение · #11

Demon666 пишет:
Аааай мантана, ты бы еще сказал, что запись в регистр ECX любого значения c помощью lea переключает реальный режим в защищенный режим

бред какой-то

Demon666 пишет:
Приведи полное описание формата (данной --> lea ecx, eax) машинной команды?

lea ecx, eax - 8D D8

Опкод - 10001101
ModR/M - 11011000 (mod == 11, dest == 011, src == 000)

Регистровый режим адресации (11) для этой инструкции запрещен, и попытка ее выполнить приведет к исключению #UD (undefined instruction).
Но это не означает, что такой инструкции нет. Просто ассемблеры тебе не скомпилируют такую мнемонику, их все таки не дураки пишут.



Ранг: 29.5 (посетитель)
Активность: 0.010
Статус: Участник

Создано: 14 августа 2006 22:52 · Поправил: Quantum
· Личное сообщение · #12

Demon666 пишет:
команда "lea ecx, eax" вызовет исключение...
Аааай мантана

Да, вызовет #UD. Попробуй, только кодировать инструкцию придётся вручную.
(rmn опередил)

Rascal пишет:
Алгоритм был бажный сам по себе.

Врёшь




Ранг: 260.9 (наставник)
Активность: 0.120
Статус: Участник
John Smith

Создано: 14 августа 2006 23:51
· Личное сообщение · #13

Quantum
Для однобитных операндов не в счёт

-----
Недостаточно только получить знания:надо найти им приложение




Ранг: 213.5 (наставник)
Активность: 0.120
Статус: Участник
забанен

Создано: 15 августа 2006 00:01
· Личное сообщение · #14

rmn
Бред говоришшшь, ну тогда опровергни вот это:
Demon666 пишет:
S_T_A_S_
Блин, все умолкаю, мне с “вами” одному тягаться нет резона, всеравнозатопчите!


Вижу азартная игра “cracklab.ru&wasm.ru” понравилась, ждете, посерьезней тем/игроков!? (знак молчания, знак согласия ;) )

-----
ЗЫ: истЕна где-то рядом, Welcome@Google.com




Ранг: 213.5 (наставник)
Активность: 0.120
Статус: Участник
забанен

Создано: 15 августа 2006 01:33
· Личное сообщение · #15

Но, однако, Edit:
rmn пишет:
lea ecx, eax - 8D D8

lea ecx, eax - 8D C8 <--> lea ebx, eax - 8D D8

rmn пишет:
Просто ассемблеры тебе не скомпилируют такую мнемонику, их все таки не дураки пишут.

Quantum пишет:
Попробуй, только кодировать инструкцию придётся вручную.

db 08Dh,0C8h <-- это съесть (Masm32)

-----
ЗЫ: истЕна где-то рядом, Welcome@Google.com




Ранг: 29.5 (посетитель)
Активность: 0.010
Статус: Участник

Создано: 15 августа 2006 01:53
· Личное сообщение · #16

Demon666 пишет:
Вижу азартная игра “cracklab.ru&wasm.ru” понравилась

S_T_A_S_ и Quantum не являются полномочными представителями wasm.ru.

Demon666 пишет:
db 08Dh,0C8h <-- это съесть (Masm32)

Под ручным кодированием подразумевалось не проделывание отверстий на перфокарте, а вычисление нужных опкодов.

За сим я, пожалуй, выбываю из топика.



Ранг: 2.6 (гость)
Активность: 0=0
Статус: Участник

Создано: 15 августа 2006 04:59
· Личное сообщение · #17

Error_Log пишет:
Думаю не стоит на это обращать внимания - каждый прочитает и из этого поймет то, что он должен понять.


Error_Log
Rascal
Demon666
лучше бы вы в этом топике молчали - не показали бы свое истинное лицо - лицо придурковатых школьников, кто кроме "статей" с кряклаба и удаф.кома ничего в своей жизни не знают.
Никаких оскорблений, просто взгляд со стороны.



Ранг: 228.7 (наставник), 2thx
Активность: 0.120
Статус: Участник
malware research

Создано: 15 августа 2006 12:28
· Личное сообщение · #18

VUX пишет:
лучше бы вы в этом топике молчали

Правильно, молитесь богу на Quantum'a. Интуиция мне подсказывает, что ты и он это одно и тоже лицо.

Если человек ставит из себя столь грамотного собеседника, пусть не говорит откровенных глупостей, которые у знающего человека могут вызвать только смех. В этом случае лучше помолчать. Как сделали многие, кто в данной теме не силен. А также пусть научится признавать свои ошибки. Не бог ведь.

-----
Research is my purpose





Ранг: 260.9 (наставник)
Активность: 0.120
Статус: Участник
John Smith

Создано: 15 августа 2006 13:24
· Личное сообщение · #19

VUX
Error_Log хорошо сказал. No comments. Действительно похоже на квантума под другой личиной.

-----
Недостаточно только получить знания:надо найти им приложение




Ранг: 2.6 (гость)
Активность: 0=0
Статус: Участник

Создано: 15 августа 2006 13:30
· Личное сообщение · #20

У меня много ников, но ника Quantum среди них нет.




Ранг: 260.9 (наставник)
Активность: 0.120
Статус: Участник
John Smith

Создано: 15 августа 2006 15:39
· Личное сообщение · #21

VUX
Тогда с тобой всё ясно.

Может ввести всё-таки проверку айпишника и убитьё мультиводов от одного айпи?

-----
Недостаточно только получить знания:надо найти им приложение




Ранг: 213.5 (наставник)
Активность: 0.120
Статус: Участник
забанен

Создано: 15 августа 2006 22:29
· Личное сообщение · #22

Quantum
НеА, ты не так все понял!
Сейчас объясню!
Для начала все началось со слов:
Error_Log пишет:
Тема триггеров Шмидта уже изрядно поднадоела - давай не будем к ней возвращаться.

Ждал и думал, какую тему для обсуждения предложить, но тут увидел:
S_T_A_S_ пишет:
Можно придумать ОО-язык, где вызов метода будет записываться "hey bro call da fuckin' method", а в ООП на ассемблере можно утверждать, что регистр EAX - ни что иное, как объект класса "регистр CPU" (который инкапсулирует какие-то там микропрограммы).

Естественно чуть видоизменил и в итоге увидел интересную идею в его словах, про исключения!
Из этого виден эквивалент "lea ecx, eax" == “тригер”
Быстро набросал вариант для развития темы про исключения на низком уровне программирования “режимов”, но тут rmn решил сие спустить в унитаз.
Мы с ним иногда играем в
http://exelab.ru/f/action=vthread&forum=7&topic=5753
По этому последние два поста предназначались лично ему!
Ну, если тебя задели буквы “cracklab.ru&wasm.ru” так это я своевольно дал название этому топу!
Ну, никак я не ожидал, что это может привести к такой плачевной ситуации!?

Теперь это:
Я не удержался и немного дополнил, так сказать истину восстановил.
rmn
Просто ассемблеры тебе не скомпилируют такую мнемонику, их все таки не дураки пишут.
Quantum
Попробуй, только кодировать инструкцию придётся вручную.
Demon666
db 08Dh,0C8h <-- это съесть (Masm32) <-- это дополнение к вашим словам
rmn Quantum
просто шикарные ответы на мои вопросы!!! Хотя они предназначались не вам!

P. S.
Просьба в дальнейшем не оскорблять друг друга!!!

Извиняюсь заранее за оффтоп!
[оффтоп]
VUX
Бу-ага-тырь ты наш на адццком лосе ты что такое.
Мальчик со школьной скамьи опиши легкую логическую схему интерфейсной платы таймера-счетчика, в каких соответствующих аппаратным прерываниям дескрипторах IDT хранятся адреса системных обработчиков, “ну и логику IRQ5”
Вот только после этого мы решим, стоит тебе осуждать нас за наши действия и кто прав, а кто виноват!????? (разрешаю лично тебе воспользоваться школьной азбукой!)
[/оффтоп]

-----
ЗЫ: истЕна где-то рядом, Welcome@Google.com




Ранг: 163.7 (ветеран)
Активность: 0.070
Статус: Участник

Создано: 16 августа 2006 16:38
· Личное сообщение · #23

Rascal пишет:
Я напиисал, что не 4 операнда а 4 разряда у 2 операндов

Ну и? Операция "поразрядное исключающее или" выполняется над операндами или их разрядами?

Rascal пишет:
В стандарте не укзано, но почему-то многие называют функции-члены методами. Отчего ты тут кипишь поднял, не пойму. В чём суть твоей паники???

Пусть называют (и я тоже буду) но название это неверное. Но мы же не скажем, что поскольку у класса нет метдов, но есть функции-члены, то экземпляры класса - это не объекты?

Rascal пишет:
Класс без методов есть частный случай. Они имеют прямое отношение к ООп т.к. могут выступать как базовый класс или наследоваться от другого класса.

И где интерфейс у данного класса:

template <std::size_t Len, std::size_t Align>
struct aligned_storage
: public aligned_storage<Len,
1 + ( Align - 1
| (Align - 1) >> 1
| (Align - 1) >> 2
| (Align - 1) >> 3
| (Align - 1) >> 4
| (Align - 1) >> 5
| (Align - 1) >> 6
| (Align - 1) >> 7
| (Align - 1) >> 8
| (Align - 1) >> 9
| (Align - 1) >> 10
| (Align - 1) >> 11
| (Align - 1) >> 12
| (Align - 1) >> 13 )
> {};
хотя... наследование, как видно, тут есть ;)

Rascal пишет:
Ты забыл самое главное указать - определение класса int. Почему же мы не можем наследоваться от класса инт.

Определение есть где-то с сорцах компилятора, это же не user-defined тип. А вот выше -- user-defined тип, а ни какой не класс. А наследоваться от int зачем надо? Детсрукторы тоже делают private не спроста ;)

Demon666 пишет:
Скажи все-таки, какое конкретное это чудо вызывает исключение, даже если предположить что это существо существует в природе!?

Тут уже написали, а от себя добавлю - открываем мануал на интсрукции LEA и видим:
#UD If source operand is not a memory location.

Demon666 пишет:
Вижу азартная игра “cracklab.ru&wasm.ru” понравилась, ждете, посерьезней тем/игроков!? (знак молчания, знак согласия ;) )

Не понял смысл вопроса, это имеет какое-то отношение к другим угрозам, которые я получал от администрации wasm.ru ?




Ранг: 260.9 (наставник)
Активность: 0.120
Статус: Участник
John Smith

Создано: 16 августа 2006 16:51
· Личное сообщение · #24

S_T_A_S_ пишет:
Ну и? Операция "поразрядное исключающее или" выполняется над операндами или их разрядами?

Какой ответ ты хочешь услышать? Прочитай сначала всё. Речь шла о смене названия суммы по модулю 2 если у оперндов более одного бита.

S_T_A_S_ пишет:
Пусть называют (и я тоже буду) но название это неверное. Но мы же не скажем, что поскольку у класса нет метдов, но есть функции-члены, то экземпляры класса - это не объекты?

Любую функцию-член класса называют методом

S_T_A_S_ пишет:
И где интерфейс у данного класса:

Может и не быть.

i]S_T_A_S_ пишет:
Определение есть где-то с сорцах компилятора, это же не user-defined тип. [/i]
А класс - это пользовательский тип данных.

-----
Недостаточно только получить знания:надо найти им приложение




Ранг: 213.5 (наставник)
Активность: 0.120
Статус: Участник
забанен

Создано: 16 августа 2006 22:41
· Личное сообщение · #25

S_T_A_S_ пишет:
Не понял смысл вопроса, это имеет какое-то отношение к другим угрозам, которые я получал от администрации wasm.ru ?

S_T_A_S_
Не-не-не! Пусть будет выглядеть это так:
Demon666 пишет:
Ну, если тебя задели буквы “cracklab.ru&wasm.ru” так это я своевольно дал название этому топу!
Ну, никак я не ожидал, что это может привести к такой плачевной ситуации!?

(Давай не будем больше возвращаться к этой теме о “cracklab.ru&wasm.ru”)

S_T_A_S_ пишет:
#UD If source operand is not a memory location.

Ну, да! Для того чтобы “прога” вовремя смогла подкорректировать эксклюзивную ситуацию “мимотазика”! ;)

S_T_A_S_ пишет:
открываем мануал на интсрукции LEA

Туторы не читаю, только если охота глянуть правильно, чел пишет или нет.
Для примера возьмем книгу П. В. Румянцев “работа с файлами в Win32” не для чайников =))
П. В. Румянцев пишет:
Секция .bss
Но так как никаких данных в этом случае хранить не нужно, то обычно ее размер в исполняемом файле равен нулю. Точнее, как таковой этой секции в исполняемом файле нет. Есть только упоминание о ней в таблице секций. Компиляторы фирмы Borland (нынешняя Inprise) секцию .bss не создают.

Само собой напрашивается задать вопрос, зачем писать такое, если не знаешь, для чего она нужна!?
(Так что не я один так могу ;) )

-----
ЗЫ: истЕна где-то рядом, Welcome@Google.com




Ранг: 163.7 (ветеран)
Активность: 0.070
Статус: Участник

Создано: 17 августа 2006 03:29
· Личное сообщение · #26

Rascal пишет:
Любую функцию-член класса называют методом

Давай получим "достоверный опыт" - напиши это в с++ на rsdn и посмотрим сколько смайлов поставят )

Rascal пишет:
>И где интерфейс у данного класса:
Может и не быть.

Код-то посмотрел, как экземпляр такого класса будет обмениваться сообщениями с другими объектами? Разве в ООП есть наследование от самого себя?

Demon666 пишет:
Туторы не читаю, только если охота глянуть правильно, чел пишет или нет.

Думаю у Intel'а меньше ошибок ;) Да и зря не читал - там ведь был ответ на твой вопрос.




Ранг: 260.9 (наставник)
Активность: 0.120
Статус: Участник
John Smith

Создано: 17 августа 2006 18:26
· Личное сообщение · #27

S_T_A_S_
Структура есть класс с открытыми данными. Не находишь, что тут дан ответ на счёт наличия методов?

S_T_A_S_ пишет:
Rascal пишет:
Любую функцию-член класса называют методом
Давай получим "достоверный опыт" - напиши это в с++ на rsdn и посмотрим сколько смайлов поставят )

Что именно по твоему не называют?

-----
Недостаточно только получить знания:надо найти им приложение




Ранг: 163.7 (ветеран)
Активность: 0.070
Статус: Участник

Создано: 17 августа 2006 20:53
· Личное сообщение · #28

Rascal пишет:
Структура есть класс с открытыми данными. Не находишь, что тут дан ответ на счёт наличия методов?

Нет, какой тут ответ? О методах нет слова. (но есть ошибки в определении структуры)

Rascal пишет:
Что именно по твоему не называют?

У, не так ;) Называть-то функции-члены методами называют, но вот правильно ли это? Тем более любые.




Ранг: 260.9 (наставник)
Активность: 0.120
Статус: Участник
John Smith

Создано: 18 августа 2006 07:08
· Личное сообщение · #29

S_T_A_S_ пишет:
У, не так ;) Называть-то функции-члены методами называют, но вот правильно ли это? Тем более любые.

Нарисуй класс, в которм функция-член не метод

S_T_A_S_ пишет:
Нет, какой тут ответ? О методах нет слова. (но есть ошибки в определении структуры)

Нарисуй структуру. Где там что неправильно

-----
Недостаточно только получить знания:надо найти им приложение




Ранг: 163.7 (ветеран)
Активность: 0.070
Статус: Участник

Создано: 18 августа 2006 13:34
· Личное сообщение · #30

Rascal пишет:
Нарисуй класс, в которм функция-член не метод

9.2 Class members [class.mem]
member-specification:
member-declaration member-specificationopt
access-specifier : member-specificationopt
member-declaration:
decl-specifier-seqopt member-declarator-listopt ;
function-definition ;opt
::opt nested-name-specifier templateopt unqualified-id ;
using-declaration
template-declaration
member-declarator-list:
member-declarator
member-declarator-list , member-declarator
member-declarator:
declarator pure-specifieropt
declarator constant-initializeropt
identifieropt : constant-expression
pure-specifier:
= 0
constant-initializer:
= constant-expression

Читай Стандарт - в любом классе нет методов. Есть члены-данные и члены-функции (как и у struct\union). Примеры есть в стандартной библиотеке, например, функторы и итераторы.

Rascal пишет:
Нарисуй структуру. Где там что неправильно

9/4 A structure is a class defined with the class-key struct; its members and base classes (clause 10) are public by default (clause 11).

Рисовать не умею.




Ранг: 260.9 (наставник)
Активность: 0.120
Статус: Участник
John Smith

Создано: 18 августа 2006 23:34
· Личное сообщение · #31

S_T_A_S_ пишет:
class defined with the class-key struct

А я и говорил, что это класс. А ты "к ООП отношения не имеет". Любой класс есть суть ООП.

S_T_A_S_ пишет:
функторы и итераторы.

Итераторы юзал, но не создавал для своих классов. Функторы хз что. Тебе виднее. Пусть будет не каждая функция-член метод.

-----
Недостаточно только получить знания:надо найти им приложение



<< . 1 . 2 . 3 . 4 . 5 . 6 . 7 . >>
 eXeL@B —› Программирование —› Альтернатива xor
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати