[Logo] Форум DL
  [DL]  На главную страницу 
Индекс форума ->Учебный процесс ГГУ/СШ 27 ->Проектирование цифровых систем 1, 2, 3, ... 15, 16, 17, 18, 19, ... 25, 26, 27
Автор Сообщение
Михаил Долинский (Online)

Темы: 2010
Сообщений: 47878

Мой профиль


Максим Малашков:

Малашков Максим ПО-21
Оценка\Индивидуальные задания\По выбору\Сконвертированные задания на программирование по схеме\Обработка битов\30 - "Программа по схеме 84514"
http://dl.gsu.by/task.jsp?nid=2302600&cid=1336

тест в CMPA пройден.
26.12 16:36 30. Программа по схеме 84514 100 / 100 Все тесты пройдены (основной + секретный). src.mpc DelTA4 at NIT0 Win10 Winter mpc
unsigned __in __bits(10) x;

unsigned __out __bits(10) res;

unsigned __bits(1) BIT(unsigned __bits(10) x,unsigned __bits(4) n){ return x>>n;}


void main()
{
 unsigned a=BIT(x,1);
  a+=BIT(x,0)*2;
  a+=BIT(x,3)*2*2;
  a+=BIT(x,2)*2*2*2;
  a+=BIT(x,5)*2*2*2*2;
  a+=BIT(x,4)*2*2*2*2*2;
  a+=BIT(x,7)*2*2*2*2*2*2;
  a+=BIT(x,6)*2*2*2*2*2*2*2;
  a+=BIT(x,9)*2*2*2*2*2*2*2*2;
  a+=BIT(x,8)*2*2*2*2*2*2*2*2*2;
  res = a;
 }


Отработка пропуска за 26_09(2) .  
Длz HLCCAD нельзя писать *2, надо использовать умножитель MUL, нельзя писать a+=, надо использовать сумматор.
Ещё лучше предложить ФУНКЦИЮ например, BUS (вот внутри неё можно делать что хочешь), которая реализует объединение линий в шину в HLCCAD
unsigned __bits(8) BUS(unsigned __bits(1) x1, unsigned __bits(1) x2, ...) <-> x1,x2,...,x8 (в HLCCAD)
Дарья Горовцова

Темы: 0
Сообщений: 17

Мой профиль
Горовцова Дарья ИТП-31
http://dl.gsu.by/task.jsp?nid=2293216&cid=1335

26.12 19:44 25. Разность 1 / 1 Все тесты пройдены (основной + секретный) alex.prd DelTA4 at NIT1 Win10 HLCCAD project
int __in __bits(8) a;
int __in __bits(8) b;

int __out __bits(16) res;

//Mathematics
unsigned __bits(8) SUM(unsigned __bits(8) A, unsigned __bits(8) B) {return A+B;}
unsigned __bits(16) MUL(unsigned __bits(8) A, unsigned __bits(8) B) {return A*B;}
unsigned __bits(16) DIVRes;
unsigned __bits(16) MODRes;
unsigned __bits(16) DIV(unsigned __bits(16) A, unsigned __bits(16) B) {return A/B;}
unsigned __bits(16) MOD(unsigned __bits(16) A, unsigned __bits(16) B) {return A%B;}
void DIVResult(unsigned __bits(16) A, unsigned __bits(16) B) {DIVRes = DIV(A,B); MODRes = MOD(A,B);}
unsigned __bits(32) DIVMOD(unsigned __bits(16) A, unsigned __bits(16) B) {return ((DIV(A,B)) << 16) + MOD(A,B);}
unsigned __bits(1) GT;
unsigned __bits(1) EQ;
unsigned __bits(1) LT;
unsigned __bits(3) CMP(unsigned __bits(8) A, unsigned __bits(8) B) {return (A > B) ? 4 : (A == B) ? 2 : 1;}
void CMPResult(unsigned __bits(8) A, unsigned __bits(8) B) {unsigned __bits(3) C = CMP(A,B); GT = C == 4; EQ = C == 2; LT = C == 1;}

//Logic
unsigned __bits(1) NOT(unsigned __bits(1) A) {return ~A;}
unsigned __bits(1) OR2(unsigned __bits(1) A, unsigned __bits(1) B) {return A | B;}
unsigned __bits(1) XOR2(unsigned __bits(1) A, unsigned __bits(1) B) {return A ^ B;}
unsigned __bits(1) AND2(unsigned __bits(1) A, unsigned __bits(1) B) {return A & B;}
//DC, CD, MS
unsigned __bits(8) DC(unsigned __bits(1) CS, unsigned __bits(3) X) {unsigned __bits(8) d = 1; return (CS == 0) ? 0 : d << X;}
unsigned __bits(4) CD(unsigned __bits(8) X) {if (X == 0) return 0; unsigned __bits(4) i = 0; while (!(X & 1)) {i++; X = X >> 1;} return (i << 1) + 1;}
unsigned __bits(1) MS(unsigned __bits(8) X, unsigned __bits(3) A) {return ((X >> A) & 1);}

int __bits(16) CBW(int __bits(8) A) {return A;}
int __bits(32) CWD(int __bits(16) A) {return A;}
int __bits(16) ISUM(int __bits(16) A, int __bits(16) B) {return A+B;}
int __bits(16) ISUB(int __bits(16) A, int __bits(16) B) {return A-B;}
int __bits(32) IMUL(int __bits(16) A, int __bits(16) B) {return A*B;}
int __bits(16) IDIV(int __bits(32) A, int __bits(32) B) {return A/B;}
unsigned __bits(3) ICMP(int __bits(32) A, int __bits(32) B) {return (A > B) ? 4 : (A == B) ? 2 : 1;}
unsigned __bits(1) IGT;
unsigned __bits(1) IEQ;
unsigned __bits(1) ILT;
void ICMPResult(int __bits(32) A, int __bits(32) B) {unsigned __bits(3) C = ICMP(A,B); IGT = C == 4; IEQ = C == 2; ILT = C == 1;}
unsigned __bits(16) x32Tox16(unsigned __bits(32) A) {return A;}
unsigned __bits(16) MSb16x2(unsigned __bits(16) Zero, unsigned __bits(16) One, unsigned __bits(1) A) {return (A) ? One : Zero;}

void main(){
  int	__bits(8) A = ISUB(a,b);
	res = SUM(MUL(A,6),7);

}


Отработка пропуска за 1_09(1).
Михаил Долинский (Online)

Темы: 2010
Сообщений: 47878

Мой профиль


Михаил Долинский:

Всем, кто хочет отрабатывать пропуски решением задач с помощью библиотеки С-МПА функций, соответствующих блокам HLCCAD

Рекомендую сдавать задачи отсюда
Unsolved Tasks - Индивидуальные задания - По выбору - Сконвертированные задания на программирование по схеме

Там прямо в условии даётся HLCCAD-схема решения задачи.
Вы просто смотрите на эту схему и записываете программу вызовами нужных блоков.

В каждой папке разрешается решать только одну задачу НИКЕМ ЕЩЁ НЕ СДАННУЮ.  
Юрий Белый

Темы: 0
Сообщений: 15

Мой профиль
Белый ИТП31
27.12 00:31 32. Программа по схеме 84400 1 / 1 Все тесты пройдены (основной + секретный). src.mpc DelTA4 at NIT0 Winter mpc

https://dl.gsu.by/task.jsp?nid=2291931&cid=1335

Экзамен\Индивидуальные задания\Сконвертированные задания на программирование по схеме\Вычислить выражение\32 - "Программа по схеме 84400"



int __in __bits(8) x;


int __out __bits(8) y;


int __bits(8) SUM(int __bits(8) A, int __bits(8) B) {int __bits(8) C;C = A + B; return C;}

int __bits(16) IMUL(int __bits(8) A, int __bits(8) B) {int __bits(16) C;C = A * B; return C;}

int __bits(8) CBW(int __bits(16) A) {return A;}


void main(){

int __out __bits(8) const2=2;
int __out __bits(8) const7=7;
int __out __bits(16) mul=IMUL(x,const2);
int __out __bits(8) mul8=CBW(mul);
y= SUM(mul8,const7);

}

Отработка пропуска 8_09
Дарья Горовцова

Темы: 0
Сообщений: 17

Мой профиль
1. **Grasshopper** - https://grasshopper.app/ это приложение от Google, которое поможет в изучении основ JavaScript через интерактивные уроки.
2. **Codecademy** - https://www.codecademy.com/ бот, который поможет в изучении различных языков программирования через интерактивные уроки.
3. **Repl.it** - https://repl.it/ бот для разработки программного обеспечения, который позволяет создавать, запускать и разделять код в облаке.
4. **Mimo** - https://getmimo.com/ ещё одно приложение, предлагающее курсы по программированию, включая создание мобильных приложений и веб-разработку.
5. **Replica** - https://replika.ai это бот-партнёр, который может помочь в изучении программирования через разговоры и поддержку.
6. **Enki** - https://www.enki.com это бот, который предлагает ежедневные уроки по программированию, а также информацию о новых технологиях.
7. **DataCamp** - https://www.datacamp.com бот, специализирующийся на обучении анализу данных и программированию на Python и R.
8. **CodeCombat** - https://codecombat.com/?autoplay это бот, который предлагает обучение программированию через игровой процесс, где вы пишете код, чтобы управлять своим персонажем в игре.
9. **Code.org** - https://code.org/?: тот бот предлагает обучение программированию через интерактивные уроки, игры и проекты.
10.**Scratch** - https://scratch.mit.edu/ бот, разработанный для обучения программированию детей и начинающих. Он позволяет создавать интерактивные истории, анимации и игры, используя блочное программирование.
11.**edX** - https://www.edx.org/ бот, который предоставляет доступ к онлайн-курсам и программам обучения от университетов и организаций по всему миру.
12.**Coursera** - https://www.coursera.org/ бот, который поможет в изучении различных языков программирования через интерактивные уроки.
Отработка пропусков 17_10, 3_10, 25_09(1), 19_09
Юрий Белый

Темы: 0
Сообщений: 15

Мой профиль
Белый ИТП31

27.12 15:34 31. Программа по схеме 84331 1 / 1 Все тесты пройдены (основной + секретный). src.mpc DelTA4 at NIT1 Win10 Winter mpc

https://dl.gsu.by/task.jsp?nid=2292000&cid=1335

Экзамен\Индивидуальные задания\Сконвертированные задания на программирование по схеме\Непростая арифметика\31 - "Программа по схеме 84331"

int __in __bits(16) IN0;
int __in __bits(16) IN1;
int __out __bits(16) OUT0;
int __out __bits(16) OUT1;

int __bits(2) ICMP(int __bits(16) A, int __bits(16) B) {if (A > B)return 1; else return 0;}
int __bits(16) MSb16x2(int __bits(16) Zero, int __bits(16) One, int __bits(2) A) {if (A)return One; else return Zero;}


void main(){
unsigned __out __bits(2) cmp=ICMP(IN0,IN1);

OUT0=MSb16x2(IN0,IN1,cmp);
OUT1=MSb16x2(IN1,IN0,cmp);
}

отработка пропуска 1_09(2)
Иван Тонко

Темы: 0
Сообщений: 19

Мой профиль
Тонко Иван ПО-21
https://dl.gsu.by/task.jsp?nid=2301002&cid=1336
27.12 17:48 27. Простой счет 1 / 1 Все тесты пройдены (основной + секретный) vit.prd DelTA4 at NIT0 Win10 HLCCAD project

int __in __bits(4) a;
int __in __bits(4) b;
int __out __bits(8) res;

//Mathematics
unsigned __bits(8) SUM(unsigned __bits(4) A, unsigned __bits(4) B) {return A+B;}
unsigned __bits(16) MUL(unsigned __bits(8) A, unsigned __bits(8) B) {return A*B;}
unsigned __bits(16) DIVRes;
unsigned __bits(16) MODRes;
unsigned __bits(16) DIV(unsigned __bits(16) A, unsigned __bits(16) B) {return A/B;}
unsigned __bits(16) MOD(unsigned __bits(16) A, unsigned __bits(16) B) {return A%B;}
void DIVResult(unsigned __bits(16) A, unsigned __bits(16) B) {DIVRes = DIV(A,B); MODRes = MOD(A,B);}
unsigned __bits(32) DIVMOD(unsigned __bits(16) A, unsigned __bits(16) B) {return ((DIV(A,B)) << 16) + MOD(A,B);}
unsigned __bits(1) GT;
unsigned __bits(1) EQ;
unsigned __bits(1) LT;
unsigned __bits(3) CMP(unsigned __bits(8) A, unsigned __bits(8) B) {return (A > B) ? 4 : (A == B) ? 2 : 1;}
void CMPResult(unsigned __bits(8) A, unsigned __bits(8) B) {unsigned __bits(3) C = CMP(A,B); GT = C == 4; EQ = C == 2; LT = C == 1;}

//Logic
unsigned __bits(1) NOT(unsigned __bits(1) A) {return ~A;}
unsigned __bits(1) OR2(unsigned __bits(1) A, unsigned __bits(1) B) {return A | B;}
unsigned __bits(1) XOR2(unsigned __bits(1) A, unsigned __bits(1) B) {return A ^ B;}
unsigned __bits(1) AND2(unsigned __bits(1) A, unsigned __bits(1) B) {return A & B;}
//DC, CD, MS
unsigned __bits(8) DC(unsigned __bits(1) CS, unsigned __bits(3) X) {unsigned __bits(8) d = 1; return (CS == 0) ? 0 : d << X;}
unsigned __bits(4) CD(unsigned __bits(8) X) {if (X == 0) return 0; unsigned __bits(4) i = 0; while (!(X & 1)) {i++; X = X >> 1;} return (i << 1) + 1;}
unsigned __bits(1) MS(unsigned __bits(8) X, unsigned __bits(3) A) {return ((X >> A) & 1);}

int __bits(16) CBW(int __bits(8) A) {return A;}
int __bits(32) CWD(int __bits(16) A) {return A;}
int __bits(16) ISUM(int __bits(16) A, int __bits(16) B) {return A+B;}
int __bits(16) ISUB(int __bits(16) A, int __bits(16) B) {return A-B;}
int __bits(32) IMUL(int __bits(16) A, int __bits(16) B) {return A*B;}
int __bits(16) IDIV(int __bits(32) A, int __bits(32) B) {return A/B;}
unsigned __bits(3) ICMP(int __bits(32) A, int __bits(32) B) {return (A > B) ? 4 : (A == B) ? 2 : 1;}
unsigned __bits(1) IGT;
unsigned __bits(1) IEQ;
unsigned __bits(1) ILT;
void ICMPResult(int __bits(32) A, int __bits(32) B) {unsigned __bits(3) C = ICMP(A,B); IGT = C == 4; IEQ = C == 2; ILT = C == 1;}
unsigned __bits(16) x32Tox16(unsigned __bits(32) A) {return A;}
unsigned __bits(16) MSb16x2(unsigned __bits(16) Zero, unsigned __bits(16) One, unsigned __bits(1) A) {return (A) ? One : Zero;}

void main(){
  int sum1 = SUM(a,2);
  int div1 = DIV(sum1,3);
  int mul1 = MUL(div1,b);
  int sum2 = SUM(mul1,1);

  res =	sum2;

}


отработка пропуска 22_12
Кирилл Поленок

Темы: 0
Сообщений: 12

Мой профиль
Поленок Кирилл ИТП-31

27.12 18:32 19. Программа по схеме 84387 Все тесты пройдены (основной + секретный).

http://dl.gsu.by/task.jsp?nid=2291918&cid=1335

Экзамен\Индивидуальные задания\Сконвертированные задания на программирование по схеме\Вычислить выражение\19 - "Программа по схеме 84387"

int __in __bits(8) a;
int __in __bits(8) b;
int __in __bits(8) c;
int __in __bits(8) d;

int __out __bits(16) res;

int __bits(16) ISUM(int __bits(16) A, int __bits(16) B) {return A+B;}
int __bits(16) IMUL(int __bits(8) A, int __bits(8) B) {int __bits(16) C; C = A * B; return C;}
int __bits(8) SUM(int __bits(8) A, int __bits(8) B) {int __bits(8) C; C = A + B; return C;}

void main() {

int	__out __bits(8) sum1 = SUM(a,b);
int	__out __bits(8) sum2 = SUM(c,d);
int __out __bits(16) mul = IMUL(sum1,sum2);
int __out __bits(16) const20 = 20;

res = ISUM(mul,const20);

}


Отработка пропуска за 19_09
Егор Восколей

Темы: 0
Сообщений: 17

Мой профиль
Восколей Егор ПИ-21
27.12 18:57 19. Квадрат (программа) 1 / 1 Все тесты пройдены (основной + секретный). src.mpc DelTA4 at NIT0 Win10 Winter mpc
https://dl.gsu.by/task.jsp?nid=2293495&cid=1335

Лучшие 20 Обсудить задачу в форуме (-): Экзамен\Индивидуальные задания\Программирование микроконтроллеров\Вычислить выражение\19 - "Квадрат (программа)" 85076 TaskConverter HLCCADtoASM 2009 Апрель 09
в новом окне (Установлена: 09.04.2009)

int __in __bits(8) R;
  int __out __bits(32) S;


  int __bits(16) MUL(int __bits(8) A, int __bits(8) B) {return A*B;}
  int __bits(32) MUL2(int __bits(16) A, int __bits(16) B) {return A*B;}

  int __bits(16) a;
  int __bits(16) b;

  void main() {
  a = MUL(R,2);
  b = MUL(R,2);
  S = MUL2(a,b);
  }
  

Отработка пропуска за 17_10
Михаил Долинский (Online)

Темы: 2010
Сообщений: 47878

Мой профиль


Дарья Горовцова:

1. **Grasshopper** - https://grasshopper.app/ это приложение от Google, которое поможет в изучении основ JavaScript через интерактивные уроки.
2. **Codecademy** - https://www.codecademy.com/ бот, который поможет в изучении различных языков программирования через интерактивные уроки.
3. **Repl.it** - https://repl.it/ бот для разработки программного обеспечения, который позволяет создавать, запускать и разделять код в облаке.
4. **Mimo** - https://getmimo.com/ ещё одно приложение, предлагающее курсы по программированию, включая создание мобильных приложений и веб-разработку.
5. **Replica** - https://replika.ai это бот-партнёр, который может помочь в изучении программирования через разговоры и поддержку.
6. **Enki** - https://www.enki.com это бот, который предлагает ежедневные уроки по программированию, а также информацию о новых технологиях.
7. **DataCamp** - https://www.datacamp.com бот, специализирующийся на обучении анализу данных и программированию на Python и R.
8. **CodeCombat** - https://codecombat.com/?autoplay это бот, который предлагает обучение программированию через игровой процесс, где вы пишете код, чтобы управлять своим персонажем в игре.
9. **Code.org** - https://code.org/?: тот бот предлагает обучение программированию через интерактивные уроки, игры и проекты.
10.**Scratch** - https://scratch.mit.edu/ бот, разработанный для обучения программированию детей и начинающих. Он позволяет создавать интерактивные истории, анимации и игры, используя блочное программирование.
11.**edX** - https://www.edx.org/ бот, который предоставляет доступ к онлайн-курсам и программам обучения от университетов и организаций по всему миру.
12.**Coursera** - https://www.coursera.org/ бот, который поможет в изучении различных языков программирования через интерактивные уроки.
Отработка пропусков 17_10, 3_10, 25_09(1), 19_09 


Не зачтено

Больше не присылай ссылки в качестве отработки
- не буду проверять - не хочу тратить на это время
ты или не понимаешь, что нужно, или намеренно обманываешь.

Принято
6. **Enki** - https://www.enki.com                    это бот, который предлагает ежедневные уроки по программированию, а также информацию о новых технологиях.
7. **DataCamp** - https://www.datacamp.com            бот, специализирующийся на обучении анализу данных и программированию на Python и R.


Не принято
1. https://grasshopper.app/                      - не открывается
2. **Codecademy** - https://www.codecademy.com/  - не имеет отношения к ИИ
3. **Repl.it** - https://repl.it/                - уже была
4. **Mimo** - https://getmimo.com/               - не имеет отношения к ИИ
5. **Replica** - https://replika.ai              - не имеет отношения к нашей теме 
8. **CodeCombat** - https://codecombat.com       - уже была
9. **Code.org** - https://code.org/              - не имеет отношения к ИИ
10.**Scratch** - https://scratch.mit.edu/        - не имеет отношения к ИИ
11.**edX** - https://www.edx.org/                - не имеет отношения к ИИ 
12.**Coursera** - https://www.coursera.org/      - не имеет отношения к ИИ


Михаил Долинский:

Принимаются только НОВЫЕ ссылки
Какие уже есть смотреть здесь
https://dl.gsu.by/NForum/posts/topicshow/3988.dl?postid=109169#109169

и далее
 
Кирилл Поленок

Темы: 0
Сообщений: 12

Мой профиль
Поленок Кирилл ИТП-31

27.12 19:32 20. Программа по схеме 84388 Все тесты пройдены (основной + секретный).

http://dl.gsu.by/task.jsp?nid=2291919&cid=1335

Экзамен\Индивидуальные задания\Сконвертированные задания на программирование по схеме\Вычислить выражение\20 - "Программа по схеме 84388"

unsigned int __in __bits(8) a;
unsigned int __in __bits(8) b;
unsigned int __in __bits(8) c;

unsigned int __out __bits(32) res;

int __bits(16) MUL(int __bits(8) A, int __bits(8) B) {return A * B;}
int __bits(32) IMUL(int __bits(16) A, int __bits(16) B) {return A * B;}
int __bits(8) SUM(int __bits(8) A, int __bits(8) B) {return A + B;}

void main() {

unsigned int __out __bits(8) sum1 = SUM(a,b);
unsigned int __out __bits(8) const10 = 10;
unsigned int __out __bits(8) sum2 = SUM(c,const10);
unsigned int __out __bits(16) mul1 = MUL(sum1,sum2);
unsigned int __out __bits(16) const2 = 2;

res = IMUL(mul1,const2);
}


Отработка пропуска за 12_12
Кирилл Поленок

Темы: 0
Сообщений: 12

Мой профиль
Поленок Кирилл ИТП-31

27.12 19:49 21. Программа по схеме 84389 Все тесты пройдены (основной + секретный).

http://dl.gsu.by/task.jsp?nid=2291920&cid=1335

Экзамен\Индивидуальные задания\Сконвертированные задания на программирование по схеме\Вычислить выражение\21 - "Программа по схеме 84389"

unsigned int __in __bits(8) x;
unsigned int __in __bits(16) y;

unsigned int __out __bits(16) res;

unsigned __bits(16) DIV(unsigned __bits(16) A, unsigned __bits(16) B) {return A/B;}
int __bits(16) MUL(int __bits(8) A, int __bits(8) B) {return A * B;}


void main() {

unsigned int __out __bits(16) mul1 = MUL(x,x);
unsigned int __out __bits(16) const2 = 2;
unsigned int __out __bits(16) div = DIV(y,const2);

res = DIV(mul1,div);
}


Отработка пропуска за 14_11
Иван Тонко

Темы: 0
Сообщений: 19

Мой профиль
Тонко Иван ПО-21
https://dl.gsu.by/task.jsp?nid=2302481&cid=1336

27.12 20:04 19. Программа по схеме 84387 100 / 100 Все тесты пройдены (основной + секретный). src.mpc DelTA4 at NIT0 Win10 Winter mpc

int __in __bits(8) a;
int __in __bits(8) b;
int __in __bits(8) c;
int __in __bits(8) d;
int __out __bits(16) res;

//Mathematics
unsigned __bits(8) SUM(unsigned __bits(4) A, unsigned __bits(4) B) {return A+B;}
unsigned __bits(16) MUL(unsigned __bits(8) A, unsigned __bits(8) B) {return A*B;}
unsigned __bits(16) DIVRes;
unsigned __bits(16) MODRes;
unsigned __bits(16) DIV(unsigned __bits(16) A, unsigned __bits(16) B) {return A/B;}
unsigned __bits(16) MOD(unsigned __bits(16) A, unsigned __bits(16) B) {return A%B;}
void DIVResult(unsigned __bits(16) A, unsigned __bits(16) B) {DIVRes = DIV(A,B); MODRes = MOD(A,B);}
unsigned __bits(32) DIVMOD(unsigned __bits(16) A, unsigned __bits(16) B) {return ((DIV(A,B)) << 16) + MOD(A,B);}
unsigned __bits(1) GT;
unsigned __bits(1) EQ;
unsigned __bits(1) LT;
unsigned __bits(3) CMP(unsigned __bits(8) A, unsigned __bits(8) B) {return (A > B) ? 4 : (A == B) ? 2 : 1;}
void CMPResult(unsigned __bits(8) A, unsigned __bits(8) B) {unsigned __bits(3) C = CMP(A,B); GT = C == 4; EQ = C == 2; LT = C == 1;}

//Logic
unsigned __bits(1) NOT(unsigned __bits(1) A) {return ~A;}
unsigned __bits(1) OR2(unsigned __bits(1) A, unsigned __bits(1) B) {return A | B;}
unsigned __bits(1) XOR2(unsigned __bits(1) A, unsigned __bits(1) B) {return A ^ B;}
unsigned __bits(1) AND2(unsigned __bits(1) A, unsigned __bits(1) B) {return A & B;}
//DC, CD, MS
unsigned __bits(8) DC(unsigned __bits(1) CS, unsigned __bits(3) X) {unsigned __bits(8) d = 1; return (CS == 0) ? 0 : d << X;}
unsigned __bits(4) CD(unsigned __bits(8) X) {if (X == 0) return 0; unsigned __bits(4) i = 0; while (!(X & 1)) {i++; X = X >> 1;} return (i << 1) + 1;}
unsigned __bits(1) MS(unsigned __bits(8) X, unsigned __bits(3) A) {return ((X >> A) & 1);}

int __bits(16) CBW(int __bits(8) A) {return A;}
int __bits(32) CWD(int __bits(16) A) {return A;}
int __bits(16) ISUM(int __bits(16) A, int __bits(16) B) {return A+B;}
int __bits(16) ISUB(int __bits(16) A, int __bits(16) B) {return A-B;}
int __bits(32) IMUL(int __bits(16) A, int __bits(16) B) {return A*B;}
int __bits(16) IDIV(int __bits(32) A, int __bits(32) B) {return A/B;}
unsigned __bits(3) ICMP(int __bits(32) A, int __bits(32) B) {return (A > B) ? 4 : (A == B) ? 2 : 1;}
unsigned __bits(1) IGT;
unsigned __bits(1) IEQ;
unsigned __bits(1) ILT;
void ICMPResult(int __bits(32) A, int __bits(32) B) {unsigned __bits(3) C = ICMP(A,B); IGT = C == 4; IEQ = C == 2; ILT = C == 1;}
unsigned __bits(16) x32Tox16(unsigned __bits(32) A) {return A;}
unsigned __bits(16) MSb16x2(unsigned __bits(16) Zero, unsigned __bits(16) One, unsigned __bits(1) A) {return (A) ? One : Zero;}

void main(){
    int __out __bits(16) const1 = 20;
	int	__out __bits(8) sum1 = SUM(a,b);
	int	__out __bits(8) sum2 = SUM(c,d);
	int __out __bits(16) mul = IMUL(sum1,sum2);
	int __out __bits(16) otv = ISUM(mul,const1);

	res = otv;
}


Отработка пропуска 19_12(2)
Иван Тонко

Темы: 0
Сообщений: 19

Мой профиль
Тонко Иван ПО-21
https://dl.gsu.by/task.jsp?nid=2301230&cid=1336

27.12 21:58 6. Найти res 100 / 100 Все тесты пройдены (нет секретного) 80434.prd DelTA4 at NIT1 Win10 HLCCAD project

int __in __bits(8) a;
int __in __bits(8) b;
int __out __bits(16) res;

//Mathematics
unsigned __bits(8) SUM(unsigned __bits(4) A, unsigned __bits(4) B) {return A+B;}
unsigned __bits(16) MUL(unsigned __bits(8) A, unsigned __bits(8) B) {return A*B;}
unsigned __bits(16) DIVRes;
unsigned __bits(16) MODRes;
unsigned __bits(16) DIV(unsigned __bits(16) A, unsigned __bits(16) B) {return A/B;}
unsigned __bits(16) MOD(unsigned __bits(16) A, unsigned __bits(16) B) {return A%B;}
void DIVResult(unsigned __bits(16) A, unsigned __bits(16) B) {DIVRes = DIV(A,B); MODRes = MOD(A,B);}
unsigned __bits(32) DIVMOD(unsigned __bits(16) A, unsigned __bits(16) B) {return ((DIV(A,B)) << 16) + MOD(A,B);}
unsigned __bits(1) GT;
unsigned __bits(1) EQ;
unsigned __bits(1) LT;
unsigned __bits(3) CMP(unsigned __bits(8) A, unsigned __bits(8) B) {return (A > B) ? 4 : (A == B) ? 2 : 1;}
void CMPResult(unsigned __bits(8) A, unsigned __bits(8) B) {unsigned __bits(3) C = CMP(A,B); GT = C == 4; EQ = C == 2; LT = C == 1;}

//Logic
unsigned __bits(1) NOT(unsigned __bits(1) A) {return ~A;}
unsigned __bits(1) OR2(unsigned __bits(1) A, unsigned __bits(1) B) {return A | B;}
unsigned __bits(1) XOR2(unsigned __bits(1) A, unsigned __bits(1) B) {return A ^ B;}
unsigned __bits(1) AND2(unsigned __bits(1) A, unsigned __bits(1) B) {return A & B;}
//DC, CD, MS
unsigned __bits(8) DC(unsigned __bits(1) CS, unsigned __bits(3) X) {unsigned __bits(8) d = 1; return (CS == 0) ? 0 : d << X;}
unsigned __bits(4) CD(unsigned __bits(8) X) {if (X == 0) return 0; unsigned __bits(4) i = 0; while (!(X & 1)) {i++; X = X >> 1;} return (i << 1) + 1;}
unsigned __bits(1) MS(unsigned __bits(8) X, unsigned __bits(3) A) {return ((X >> A) & 1);}

int __bits(16) CBW(int __bits(8) A) {return A;}
int __bits(32) CWD(int __bits(16) A) {return A;}
int __bits(16) ISUM(int __bits(16) A, int __bits(16) B) {return A+B;}
int __bits(16) ISUB(int __bits(16) A, int __bits(16) B) {return A-B;}
int __bits(32) IMUL(int __bits(16) A, int __bits(16) B) {return A*B;}
int __bits(16) IDIV(int __bits(32) A, int __bits(32) B) {return A/B;}
unsigned __bits(3) ICMP(int __bits(32) A, int __bits(32) B) {return (A > B) ? 4 : (A == B) ? 2 : 1;}
unsigned __bits(1) IGT;
unsigned __bits(1) IEQ;
unsigned __bits(1) ILT;
void ICMPResult(int __bits(32) A, int __bits(32) B) {unsigned __bits(3) C = ICMP(A,B); IGT = C == 4; IEQ = C == 2; ILT = C == 1;}
unsigned __bits(16) x32Tox16(unsigned __bits(32) A) {return A;}
unsigned __bits(16) MSb16x2(unsigned __bits(16) Zero, unsigned __bits(16) One, unsigned __bits(1) A) {return (A) ? One : Zero;}

void main(){
  int sub1  = ISUB(b,1);
  int imul1 = IMUL(sub1,3);
  int sub2  = ISUB(imul1,b);
  int sum1  = ISUM(sub2,a);
  int idiv1 = IDIV(sum1,4);

  res = idiv1;

}


отработка пропуска 15_12
Иван Тонко

Темы: 0
Сообщений: 19

Мой профиль
Тонко Иван ПО-21

https://dl.gsu.by/task.jsp?nid=2301244&cid=1336

27.12 22:15 1. Пустяковая задача 1 / 1 Все тесты пройдены (нет секретного) 80446.prd DelTA4 at NIT1 Win10 HLCCAD project

int __in __bits(8) x;
int __out __bits(8) otvet;

int __bits(16)  ISUB   (int __bits(16) A, int __bits(16) B) {return A-B;}
int __bits(32) IMUL(int __bits(16) A, int __bits(16) B) {return A*B;}
int __bits(16) IDIV(int __bits(32) A, int __bits(32) B) {return A/B;}
unsigned __bits(16) SUM(unsigned __bits(16) A, unsigned __bits(16) B) {return A+B;}
unsigned __bits(16) CBW(unsigned __bits(8) A) {return A;}
unsigned __bits(32) CWD(unsigned __bits(16) A) {return A;}
unsigned __bits(3) ICMP(int __bits(32) A, int __bits(32) B) {return (A > B) ? 4 : (A == B) ? 2 : 1;}
unsigned __bits(16) MSb16x2(unsigned __bits(16) Zero, unsigned __bits(16) One, unsigned __bits(1) A) {return A ? One : Zero;}
 
void main(){
unsigned __bits(1)A=0;

int sum1 = SUM(x,30);
int res1 = sum1;

int sum2 = SUM(x,20);
int	res2 = sum2;

if ((ICMP(x,0) == 1 )||( ICMP(x,0) == 2)) A = 0;
if (ICMP(x,0) == 4) A = 1;
otvet =MSb16x2(res2,res1,A);
}


отработка пропуска 12_12(1)
 
Индекс форума ->Учебный процесс ГГУ/СШ 27 ->Проектирование цифровых систем 1, 2, 3, ... 15, 16, 17, 18, 19, ... 25, 26, 27
Time:0,047