IPB
ЛогинПароль:

> Правила раздела!

1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!

> Inc Vs +1
-DB-
сообщение 25.11.2004 16:52
Сообщение #1


Гость






Код

program l;
c,i:byte;
begin
c:=0;
for i:=1 to 255 do
inc(c);
readln;
end.

и
Код

program l;
c,i:byte;
begin
c:=0;
for i:=1 to 255 do
c:=c+1;
readln;
end.

Разницы же никакой так зачем же создали процедуру inc :fire:
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
xds
сообщение 25.11.2004 18:16
Сообщение #2


N337
****

Группа: Пользователи
Сообщений: 737
Пол: Мужской

Репутация: -  26  +


Inc не является процедурой в полном смысле этого слова. Это языковая конструкция (как и Dec, Write/Writeln, Read/Readln, Succ, Pred и т. п. - большинство "процедур" фиктивного модуля "System").

Причины большей эффективности Inc и Dec перед обычным присвоением заключаются в следующем: для конструкции "c := c + 1;" будет сгенерирован код
Код
mov al,c
xor ah,ah
inc ax
mov c,al

в то время как для "Inc(с);" - всего лишь одна инструкция:
Код
inc  byte ptr c


Разница очевидна: c Inc мы не замачиваем - мы просто стираем lol.gif


--------------------
The idiots are winning.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 21.07.2025 15:28
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"