Страница 1 из 12

ВСЕМ ПОЛЬЗОВАТЕЛЯМ И ПРОГРАММИСТАМ СЮДА!

Добавлено: Вт фев 01, 2011 17:04:23
А.Андрей
Здесь опубликовываются, тестируются и обсуждаются програмы на Си и Ассемблере!
Первая прога:демка Флаг России
О Б С У Ж Д А Е М !
:)

Re: ВСЕМ ПОЛЬЗОВАТЕЛЯМ И ПРОГРАММИСТАМ СЮДА!

Добавлено: Вт фев 01, 2011 17:08:16
РадиоЛоматель
А.Андрей писал(а):Первая прога:демка Флаг России

Однако программа волшебная. Ни выйти ни закрыть. Ладно, у меня это не вызвало ни малейшей паники. Диспетчер задач быстро решил проблему. Но все таки, хоть какой-то интерфейс должен же быть? Сделайте хоть, чтоб на esc реагировала.

Re: ВСЕМ ПОЛЬЗОВАТЕЛЯМ И ПРОГРАММИСТАМ СЮДА!

Добавлено: Вт фев 01, 2011 17:26:34
SeregaT
РадиоЛоматель писал(а):Сделайте хоть, чтоб на esc реагировала.

Ну или чтобы диспетчером задач не закрывалась, а требовала отправить SMS, чтобы её можно было отключить.

Re: ВСЕМ ПОЛЬЗОВАТЕЛЯМ И ПРОГРАММИСТАМ СЮДА!

Добавлено: Вт фев 01, 2011 17:38:39
Pika4u
Во-первых: как я подозреваю, прога написана на С++? Во-вторых-интерфейса 0. В-третьих-писал кто?

Re: ВСЕМ ПОЛЬЗОВАТЕЛЯМ И ПРОГРАММИСТАМ СЮДА!

Добавлено: Вт фев 01, 2011 17:55:14
Pika4u
И еще-за 2 минуты я накатал подобную прогу)) вот исходник-
#include <stdio.h>
#include <graphics.h>
main()
{
initwindow(1280,1024);
setfillstyle(1,15);
bar(0,0,1280,342);
setfillstyle(1,1);
bar(0,342,1280,684);
setfillstyle(1,4);
bar(0,684,1280,1024);
getch();
closegraph();
}
Скомпилированная прога- http://depositfiles.com/files/k4whmv2k3

Re: ВСЕМ ПОЛЬЗОВАТЕЛЯМ И ПРОГРАММИСТАМ СЮДА!

Добавлено: Вт фев 01, 2011 18:03:04
РадиоЛоматель
Пикачу, сразу видно, что ваша прога написана на Си. По размеру 1,36 Мб :)) А программа Андрея-104 байта. Но здесь, конечно, лучше Си.

Re: ВСЕМ ПОЛЬЗОВАТЕЛЯМ И ПРОГРАММИСТАМ СЮДА!

Добавлено: Вт фев 01, 2011 18:18:06
sergeys
Прогу не смотрел, но хотите я вам на КУБАЙСИКЕ флаг России нарисую? :))) :)))

Re: ВСЕМ ПОЛЬЗОВАТЕЛЯМ И ПРОГРАММИСТАМ СЮДА!

Добавлено: Вт фев 01, 2011 18:35:38
Black-and-White
sergeys писал(а):Прогу не смотрел, но хотите я вам на КУБАЙСИКЕ флаг России нарисую? :))) :)))

Ой, удивил...
Я даже на заборе его нарисовать могу! :))

Re: ВСЕМ ПОЛЬЗОВАТЕЛЯМ И ПРОГРАММИСТАМ СЮДА!

Добавлено: Вт фев 01, 2011 18:38:44
Pika4u
Блин, это что, получается, стандартный graphics.h выдает прогу в 1.36 Мб? :))) :))) :))) :))) А та прога на Ассемблере, как я понял? :))

Re: ВСЕМ ПОЛЬЗОВАТЕЛЯМ И ПРОГРАММИСТАМ СЮДА!

Добавлено: Вт фев 01, 2011 19:32:42
А.Андрей
Вы поразительно догадливы, коллега! :)))
А вот исходник:

Код: Выделить всё

xor ax,ax
add al,10h
int 10h
and cx,0
and dx,0
a1:
mov ah,0ch
mov al,0fh
push cx
push dx
int 10h
pop dx
pop cx
cmp cx,258h
jz a2
inc cx
jmp a1
a2:
xor cx,cx
cmp dx,73h
jz a3
inc dx
jmp a1
a3:
mov ah,0ch
mov al,9h
push cx
push dx
int 10h
pop dx
pop cx
cmp cx,258h
jz a4
inc cx
jmp a3
a4:
xor cx,cx
cmp dx,0e6h
jz a5
inc dx
jmp a3
a5:
mov ah,0ch
mov al,0ch
push cx
push dx
int 10h
pop dx
pop cx
cmp cx,258h
jz a6
inc cx
jmp a5
a6:
xor cx,cx
cmp dx,159h
jz a7
inc dx
jmp a5
a7:
nop
jmp a7

из-за этого
a7:
nop
jmp a7

программа забита в бесконечный цикл
а если бы его не было
прога и пол секунды не работала бы :wink:
сейчас попробую это устранить

Re: ВСЕМ ПОЛЬЗОВАТЕЛЯМ И ПРОГРАММИСТАМ СЮДА!

Добавлено: Вт фев 01, 2011 19:37:57
Redrik Shuhart
ты посмотри сколько ненужного ты впихнул со своим Си..не зря ж он есть макроязык..

Re: ВСЕМ ПОЛЬЗОВАТЕЛЯМ И ПРОГРАММИСТАМ СЮДА!

Добавлено: Вт фев 01, 2011 19:44:48
А.Андрей
Redrik Shuhart писал(а):ты посмотри сколько ненужного ты впихнул со своим Си..не зря ж он есть макроязык..

Вы про меня? у меня асм!!! :)

Re: ВСЕМ ПОЛЬЗОВАТЕЛЯМ И ПРОГРАММИСТАМ СЮДА!

Добавлено: Вт фев 01, 2011 19:44:57
Pika4u
А.Андрей писал(а):

Код: Выделить всё

xor ax,ax
add al,10h
int 10h
and cx,0
and dx,0
a1:
mov ah,0ch
mov al,0fh
push cx
push dx
int 10h
pop dx
pop cx
cmp cx,258h
jz a2
inc cx
jmp a1
a2:
xor cx,cx
cmp dx,73h
jz a3
inc dx
jmp a1
a3:
mov ah,0ch
mov al,9h
push cx
push dx
int 10h
pop dx
pop cx
cmp cx,258h
jz a4
inc cx
jmp a3
a4:
xor cx,cx
cmp dx,0e6h
jz a5
inc dx
jmp a3
a5:
mov ah,0ch
mov al,0ch
push cx
push dx
int 10h
pop dx
pop cx
cmp cx,258h
jz a6
inc cx
jmp a5
a6:
xor cx,cx
cmp dx,159h
jz a7
inc dx
jmp a5
a7:
nop
jmp a7


А теперь:

Код: Выделить всё

#include <stdio.h>
#include <graphics.h>
main()
{
initwindow(1280,1024);
setfillstyle(1,15);
bar(0,0,1280,342);
setfillstyle(1,1);
bar(0,342,1280,684);
setfillstyle(1,4);
bar(0,684,1280,1024);
getch();
closegraph();
}

Сравните ж*пу с пальцем))) На С++ в несколько раз строк меньше))) Да и быстрее на С++ писать получается))Так что-пишите на С++))И чихать нам на размер файла с программой)))У меня калькулятор с тригонометрическими функциями и функцией перевода двоичных чисел в десятичные и обратно, складывание, умножение, деление, вычитание как двоичных так и десятичных чисел, написанный лично мной, вести 50 Кб. Посмотрю я на вас, когда на ассемблере будете тригонометрические функции писать))

Re: ВСЕМ ПОЛЬЗОВАТЕЛЯМ И ПРОГРАММИСТАМ СЮДА!

Добавлено: Вт фев 01, 2011 19:50:37
РадиоЛоматель
Но ведь кто-то до нас это сделал! (Создатели Си-шных компиляторов, по крайней мере)

Re: ВСЕМ ПОЛЬЗОВАТЕЛЯМ И ПРОГРАММИСТАМ СЮДА!

Добавлено: Вт фев 01, 2011 19:56:33
Redrik Shuhart
Сравните ж*пу с пальцем))) На С++ в несколько раз строк меньше))) Да и быстрее на С++ писать получается))Так что-пишите на С++))И чихать нам на размер файла с программой)))У меня калькулятор с тригонометрическими функциями и функцией перевода двоичных чисел в десятичные и обратно, складывание, умножение, деление, вычитание как двоичных так и десятичных чисел, написанный лично мной, вести 50 Кб. Посмотрю я на вас, когда на ассемблере будете тригонометрические функции писать))

Пруф на экзешник

Re: ВСЕМ ПОЛЬЗОВАТЕЛЯМ И ПРОГРАММИСТАМ СЮДА!

Добавлено: Вт фев 01, 2011 19:57:40
Upgrader
Pika4u писал(а):На С++ в несколько раз строк меньше))) Да и быстрее на С++ писать получается))Так что-пишите на С++))И чихать нам на размер файла с программой)))
И чихать на производительность, и на энергоэффективность, и на объем диска пользователя, и на память. :( :cry:
На С любой дурак напишет. Вопрос - кто дурак? :)))

А писать на асме - это целое искусство, да еще и "спортивное".

Re: ВСЕМ ПОЛЬЗОВАТЕЛЯМ И ПРОГРАММИСТАМ СЮДА!

Добавлено: Вт фев 01, 2011 19:59:28
А.Андрей
Pika4u писал(а):Сравните ж*пу с пальцем)))

Твою чтоль? :kill:
На С++ в несколько раз строк меньше)))

Дальше что?
И чихать нам на размер файла с программой

Вам - да.
Зря вы так думаете : 1,3 МЕГАБАЙТА по сравнению с 104 БАЙТА! Разница есть? Отнюдь не в вашу пользу!
Хотя она делает АБСОЛЮТНО ТОЖЕ САМОЕ что и моя!
Хотя у меня ДОС- прога, но и это сути не меняет!
Посмотрю я на вас, когда на ассемблере будете тригонометрические функции писать))

Вы про арифметический сопроцессор и интерфейс API-Windows слышали? Вот с их то помощью и будем...

Re: ВСЕМ ПОЛЬЗОВАТЕЛЯМ И ПРОГРАММИСТАМ СЮДА!

Добавлено: Вт фев 01, 2011 20:02:37
А.Андрей
Upgrader писал(а):И чихать на производительность, и на энергоэффективность, и на объем диска пользователя, и на память. :( :cry:
На С любой дурак напишет. Вопрос - кто дурак? :)))

А писать на асме - это целое искусство, да еще и "спортивное".

Хоть вы меня поддерживаете :)) спасибо :))
Хотя я в этом асме не всё понимаю, но прогу написать могу :)

Re: ВСЕМ ПОЛЬЗОВАТЕЛЯМ И ПРОГРАММИСТАМ СЮДА!

Добавлено: Вт фев 01, 2011 20:04:17
Pika4u
Ну в таком случае, извращенцы, напишите мне на асме, как принять переменную, вычислить косинус, и вывести косинус))
Вот как это будет на С++
#include <stdio.h>
#include <math.h>
#include <conio.h>
main()
{
float n,k;
printf("Введите n");
scanf("%f",&n);
k=cos(n);
printf("Косинус равен %f ,k");
getch();
}

Re: ВСЕМ ПОЛЬЗОВАТЕЛЯМ И ПРОГРАММИСТАМ СЮДА!

Добавлено: Вт фев 01, 2011 20:12:43
Upgrader
Pika4u писал(а):Ну в таком случае, извращенцы, напишите мне на асме, как принять переменную, вычислить косинус, и вывести косинус))
Ога, еще учить вас... Или думаете в асме нет математических библиотек что-ли? Так-же и в нем реализуется, точно так-же. Go To ASM FAQs
Только с той разницей что использование библиотек в асме не перегружает код говном, в отличи от Си.