Автор |
Сообщение |
17.12.2022 10:33:33
Тема: Re:Вопросы и ответы по C-MPA
|
Игорь Коршунов
Темы: 7
Сообщений: 2198
Мой профиль
|
Михаил Долинский:
16.12.2022 15:22:06 16.12.2022 15:22:10 Тимощенко Николай Архитектура вычислительных систем (ПО4/ИТ3/ПИ2) - 2022 19. Перевертыш 0 [test1]: Ошибка компиляции (mpc): Внутренняя ошибка компилятора - Unsupported node type. src.mpc DelTA3 at NIT7
char str[64];
char __out out1;
void main()
{
int g = 0;
for(int i = 0; i < 64; i++)
{
if (str[i] != '#')
g++;
else
break;
}
for(int k = 0, j = g; j >= 0; j--, k++)
{
if (str[k] == str[j])
{
out1 = "yes";
}
else
{
out1 = "no";
break;
}
}
}
Так писать нельзя.
out1 = "yes";
Но можно так:
char yes[] = "yes";
void main()
{
out1 = yes;
}
|
17.12.2022 10:36:30
Тема: Re:Вопросы и ответы по C-MPA
|
Игорь Коршунов
Темы: 7
Сообщений: 2198
Мой профиль
|
Егор Бычковский:
Архитектура вычислительных систем (ПО4/ИТ3/ПИ2) - 2022
Контрольные срезы\5 декабря\Проектирование\Простые устройства с памятью\2 - "Арифметика" (53810)
http://dl.gsu.by/task.jsp?nid=2242777&cid=1282
unsigned __in __bits(2) A;
unsigned __in __bits(2) B;
unsigned __in __bits(2) C;
unsigned __out __bits(8) RES;
unsigned __bits(8) reg;
void main() {
if (A*B < C+1) RES = reg = 0;
else if (A*B > C+1) RES = reg = (A*B-C);
else RES = reg;
}
не проходит тесты
unsigned __in __bits(2) A;
unsigned __in __bits(2) B;
unsigned __in __bits(2) C;
unsigned __out __bits(8) RES;
unsigned __bits(8) reg;
void main() {
if (A*B < C+1) reg = 0;
else if (A*B > C+1) reg = (A*B-C);
RES = reg;
}
такая тоже не проходит
Сохраняйте значения входных при решении задач с памятью
|
20.12.2022 10:28:58
Тема: Re:Вопросы и ответы по C-MPA
|
Яков Шаповалов
Темы: 1
Сообщений: 11
Мой профиль
|
Экзамен\Индивидуальные задания\Проектирование цифровых устройств\Простые устройства с памятью\4 - "Простые вычисления" 54164 Некрасов Павел, ПО-21, Март 2007
http://dl.gsu.by/task.jsp?nid=2252562&cid=1282
Вопрос. В чем может быть ошибка?
На шестой и седьмой секунде неправильный out.
unsigned __in __bits(16) a;
unsigned __in __bits(16) b;
unsigned __in __bits(16) c;
unsigned __in __bits(16) d;
unsigned __in __bits(1) e;
unsigned __out __bits(16) out;
unsigned __bits(16) ch;
int main(){
unsigned __bits(16) aa = a;
unsigned __bits(16) bb = b;
unsigned __bits(16) cc = c;
unsigned __bits(16) ddd = d;
unsigned __bits(1) ee = e;
unsigned __bits(16) out1;
if (ee == 1)
ch=(cc + ddd);
if ((ch * 2) > (aa+bb)*4)
out1 = ch;
else if ((ch*2) < (aa+bb)*4)
out1 = (ch/cc) + ddd;
else if ((cc % 2) == 0)
out1 = aa;
else out1 = 0;
out = out1;
}
|
22.12.2022 11:56:37
Тема: Re:Вопросы и ответы по C-MPA
|
Сергей Пугач
Темы: 0
Сообщений: 6
Мой профиль
|
Архитектура вычислительных систем (ПО4/ИТ3/ПИ2) - 2022
Экзамен\Контроль практики\Интегральный контроль\15\Add-15\Сортировки\1 - "Сортировка 32 чисел" (98925)
http://dl.gsu.by/task.jsp?nid=2249538&cid=1282
Можно ли решить эту задачу на CMPA?
|
22.12.2022 12:00:08
Тема: Re:Вопросы и ответы по C-MPA
|
Артем Гиталев
Темы: 0
Сообщений: 20
Мой профиль
|
http://dl.gsu.by/task.jsp?nid=2249538&cid=1282
unsigned __in __bits(3) x0;
unsigned __in __bits(3) x1;
unsigned __in __bits(3) x2;
unsigned __in __bits(3) x3;
unsigned __in __bits(3) x4;
unsigned __in __bits(3) x5;
unsigned __in __bits(3) x6;
unsigned __in __bits(3) x7;
unsigned __in __bits(3) x8;
unsigned __in __bits(3) x9;
unsigned __in __bits(3) x10;
unsigned __in __bits(3) x11;
unsigned __in __bits(3) x12;
unsigned __in __bits(3) x13;
unsigned __in __bits(3) x14;
unsigned __in __bits(3) x15;
unsigned __in __bits(3) x16;
unsigned __in __bits(3) x17;
unsigned __in __bits(3) x18;
unsigned __in __bits(3) x19;
unsigned __in __bits(3) x20;
unsigned __in __bits(3) x21;
unsigned __in __bits(3) x22;
unsigned __in __bits(3) x23;
unsigned __in __bits(3) x24;
unsigned __in __bits(3) x25;
unsigned __in __bits(3) x26;
unsigned __in __bits(3) x27;
unsigned __in __bits(3) x28;
unsigned __in __bits(3) x29;
unsigned __in __bits(3) x30;
unsigned __in __bits(3) x31;
unsigned __out __bits(3) y0;
unsigned __out __bits(3) y1;
unsigned __out __bits(3) y2;
unsigned __out __bits(3) y3;
unsigned __out __bits(3) y4;
unsigned __out __bits(3) y5;
unsigned __out __bits(3) y6;
unsigned __out __bits(3) y7;
unsigned __out __bits(3) y8;
unsigned __out __bits(3) y9;
unsigned __out __bits(3) y10;
unsigned __out __bits(3) y11;
unsigned __out __bits(3) y12;
unsigned __out __bits(3) y13;
unsigned __out __bits(3) y14;
unsigned __out __bits(3) y15;
unsigned __out __bits(3) y16;
unsigned __out __bits(3) y17;
unsigned __out __bits(3) y18;
unsigned __out __bits(3) y19;
unsigned __out __bits(3) y20;
unsigned __out __bits(3) y21;
unsigned __out __bits(3) y22;
unsigned __out __bits(3) y23;
unsigned __out __bits(3) y24;
unsigned __out __bits(3) y25;
unsigned __out __bits(3) y26;
unsigned __out __bits(3) y27;
unsigned __out __bits(3) y28;
unsigned __out __bits(3) y29;
unsigned __out __bits(3) y30;
unsigned __out __bits(3) y31;
void main()
{
char a[32];
a[0]=x0;
a[1]=x1;
a[2]=x2;
a[3]=x3;
a[4]=x4;
a[5]=x5;
a[6]=x6;
a[7]=x7;
a[8]=x8;
a[9]=x9;
a[10]=x10;
a[11]=x11;
a[12]=x12;
a[13]=x13;
a[14]=x14;
a[15]=x15;
a[16]=x16;
a[17]=x17;
a[18]=x18;
a[19]=x19;
a[20]=x20;
a[21]=x21;
a[22]=x22;
a[23]=x23;
a[24]=x24;
a[25]=x25;
a[26]=x26;
a[27]=x27;
a[28]=x28;
a[29]=x29;
a[30]=x30;
a[31]=x31;
int min = 60000;
int index;
for(int i = 0; i<31; i++) {
for(int j=i;j<32; j++)
if(a[j]<min) {min=a[j]; index = j;}
int t = a[i];
a[i] = a[index];
a[index] = t;
}
y0=a[0];
y1=a[1];
y2=a[2];
y3=a[3];
y4=a[4];
y5=a[5];
y6=a[6];
y7=a[7];
y8=a[8];
y9=a[9];
y10=a[10];
y11=a[11];
y12=a[12];
y13=a[13];
y14=a[14];
y15=a[15];
y16=a[16];
y17=a[17];
y18=a[18];
y19=a[19];
y20=a[20];
y21=a[21];
y22=a[22];
y23=a[23];
y24=a[24];
y25=a[25];
y26=a[26];
y27=a[27];
y28=a[28];
y29=a[29];
y30=a[30];
y31=a[31];
}
При попытке "Новый Stand Alone устройство" > MPA - ошибка "Unknown error (Indirect adressing is not syntesable yet)".
|
24.12.2022 11:27:50
Тема: Re:Вопросы и ответы по C-MPA
|
Игорь Коршунов
Темы: 7
Сообщений: 2198
Мой профиль
|
Яков Шаповалов:
Экзамен\Индивидуальные задания\Проектирование цифровых устройств\Простые устройства с памятью\4 - "Простые вычисления" 54164 Некрасов Павел, ПО-21, Март 2007
http://dl.gsu.by/task.jsp?nid=2252562&cid=1282
Вопрос. В чем может быть ошибка?
На шестой и седьмой секунде неправильный out.
unsigned __in __bits(16) a;
unsigned __in __bits(16) b;
unsigned __in __bits(16) c;
unsigned __in __bits(16) d;
unsigned __in __bits(1) e;
unsigned __out __bits(16) out;
unsigned __bits(16) ch;
int main(){
unsigned __bits(16) aa = a;
unsigned __bits(16) bb = b;
unsigned __bits(16) cc = c;
unsigned __bits(16) ddd = d;
unsigned __bits(1) ee = e;
unsigned __bits(16) out1;
if (ee == 1)
ch=(cc + ddd);
if ((ch * 2) > (aa+bb)*4)
out1 = ch;
else if ((ch*2) < (aa+bb)*4)
out1 = (ch/cc) + ddd;
else if ((cc % 2) == 0)
out1 = aa;
else out1 = 0;
out = out1;
}
Нужно вместо unsigned использовать int. Только для e обязательно оставить unsigned (т.к. это беззнаковый флажок).
Дополнил условие задачи.
|
24.12.2022 12:20:09
Тема: Re:Вопросы и ответы по C-MPA
|
Игорь Коршунов
Темы: 7
Сообщений: 2198
Мой профиль
|
Сергей Пугач:
Архитектура вычислительных систем (ПО4/ИТ3/ПИ2) - 2022
Экзамен\Контроль практики\Интегральный контроль\15\Add-15\Сортировки\1 - "Сортировка 32 чисел" (98925)
http://dl.gsu.by/task.jsp?nid=2249538&cid=1282
Можно ли решить эту задачу на CMPA?
Схема сортировки такая:
// сперва переписываем входы во внутренние переменные
t0 = x0; t1 = x1; ...
// затем должна идти сеть сортировки состоящая из модулей компараторов
// пример модуля компаратора для t5 и t9
if (t5 > t9) {t=t5; t5=t9; t9=t}
...
// в конце подаем на выходы
y0 = t0; y1 = t1; ...
Теория по сортировочным сетям:
https://ru.wikipedia.org/wiki/%D0%A1%D0%B5%D1%82%D1%8C_%D1%81%D0%BE%D1%80%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%BA%D0%B8
https://neerc.ifmo.ru/wiki/index.php?title=%D0%A1%D0%BE%D1%80%D1%82%D0%B8%D1%80%D1%83%D1%8E%D1%89%D0%B8%D0%B5_%D1%81%D0%B5%D1%82%D0%B8
Сортировочная сеть на 32 элемента:
https://translated.turbopages.org/proxy_u/en-ru.ru.5d663779-63a6c2d8-47132f36-74722d776562/https/stackoverflow.com/questions/25838614/how-sorting-networks-built-by-hand
https://question-it.com/questions/4437751/kak-sortirovochnye-seti-sozdajutsja-vruchnuju
|
24.12.2022 12:23:30
Тема: Re:Вопросы и ответы по C-MPA
|
Игорь Коршунов
Темы: 7
Сообщений: 2198
Мой профиль
|
Артем Гиталев:
При попытке "Новый Stand Alone устройство" > MPA - ошибка "Unknown error (Indirect adressing is not syntesable yet)".
Пока нет поддержки синтеза схем для операций с массивами.
|
16.01.2023 11:23:10
Тема: Re:Вопросы и ответы по C-MPA
|
Перман Тойлыев
Темы: 0
Сообщений: 1
Мой профиль
|
Михаил Долинский:
Михаил Долинский:
Первый, кто решит
задачу
а также выложит и опишет своё решение, получит сброс ВСЕХ оставшихся пропусков
______________________
>>>
|
23.01.2023 10:29:16
Тема: Re:Вопросы и ответы по C-MPA
|
Михаил Долинский
Темы: 2072
Сообщений: 49881
Мой профиль
|
Решение Тойлыева
Warning: File was truncated! The limit is 20000.
unsigned __in __bits(3) x0;
unsigned __in __bits(3) x1;
unsigned __in __bits(3) x2;
unsigned __in __bits(3) x3;
unsigned __in __bits(3) x4;
unsigned __in __bits(3) x5;
unsigned __in __bits(3) x6;
unsigned __in __bits(3) x7;
unsigned __in __bits(3) x8;
unsigned __in __bits(3) x9;
unsigned __in __bits(3) x10;
unsigned __in __bits(3) x11;
unsigned __in __bits(3) x12;
unsigned __in __bits(3) x13;
unsigned __in __bits(3) x14;
unsigned __in __bits(3) x15;
unsigned __in __bits(3) x16;
unsigned __in __bits(3) x17;
unsigned __in __bits(3) x18;
unsigned __in __bits(3) x19;
unsigned __in __bits(3) x20;
unsigned __in __bits(3) x21;
unsigned __in __bits(3) x22;
unsigned __in __bits(3) x23;
unsigned __in __bits(3) x24;
unsigned __in __bits(3) x25;
unsigned __in __bits(3) x26;
unsigned __in __bits(3) x27;
unsigned __in __bits(3) x28;
unsigned __in __bits(3) x29;
unsigned __in __bits(3) x30;
unsigned __in __bits(3) x31;
unsigned __out __bits(3) y0;
unsigned __out __bits(3) y1;
unsigned __out __bits(3) y2;
unsigned __out __bits(3) y3;
unsigned __out __bits(3) y4;
unsigned __out __bits(3) y5;
unsigned __out __bits(3) y6;
unsigned __out __bits(3) y7;
unsigned __out __bits(3) y8;
unsigned __out __bits(3) y9;
unsigned __out __bits(3) y10;
unsigned __out __bits(3) y11;
unsigned __out __bits(3) y12;
unsigned __out __bits(3) y13;
unsigned __out __bits(3) y14;
unsigned __out __bits(3) y15;
unsigned __out __bits(3) y16;
unsigned __out __bits(3) y17;
unsigned __out __bits(3) y18;
unsigned __out __bits(3) y19;
unsigned __out __bits(3) y20;
unsigned __out __bits(3) y21;
unsigned __out __bits(3) y22;
unsigned __out __bits(3) y23;
unsigned __out __bits(3) y24;
unsigned __out __bits(3) y25;
unsigned __out __bits(3) y26;
unsigned __out __bits(3) y27;
unsigned __out __bits(3) y28;
unsigned __out __bits(3) y29;
unsigned __out __bits(3) y30;
unsigned __out __bits(3) y31;
unsigned __bits(3) xx0;
unsigned __bits(3) xx1;
unsigned __bits(3) xx2;
unsigned __bits(3) xx3;
unsigned __bits(3) xx4;
unsigned __bits(3) xx5;
unsigned __bits(3) xx6;
unsigned __bits(3) xx7;
unsigned __bits(3) xx8;
unsigned __bits(3) xx9;
unsigned __bits(3) xx10;
unsigned __bits(3) xx11;
unsigned __bits(3) xx12;
unsigned __bits(3) xx13;
unsigned __bits(3) xx14;
unsigned __bits(3) xx15;
unsigned __bits(3) xx16;
unsigned __bits(3) xx17;
unsigned __bits(3) xx18;
unsigned __bits(3) xx19;
unsigned __bits(3) xx20;
unsigned __bits(3) xx21;
unsigned __bits(3) xx22;
unsigned __bits(3) xx23;
unsigned __bits(3) xx24;
unsigned __bits(3) xx25;
unsigned __bits(3) xx26;
unsigned __bits(3) xx27;
unsigned __bits(3) xx28;
unsigned __bits(3) xx29;
unsigned __bits(3) xx30;
unsigned __bits(3) xx31;
void main (){
xx0 = x0;
xx1 = x1;
xx2 = x2;
xx3 = x3;
xx4 = x4;
xx5 = x5;
xx6 = x6;
xx7 = x7;
xx8 = x8;
xx9 = x9;
xx10 = x10;
xx11 = x11;
xx12 = x12;
xx13 = x13;
xx14 = x14;
xx15 = x15;
xx16 = x16;
xx17 = x17;
xx18 = x18;
xx19 = x19;
xx20 = x20;
xx21 = x21;
xx22 = x22;
xx23 = x23;
xx24 = x24;
xx25 = x25;
xx26 = x26;
xx27 = x27;
xx28 = x28;
xx29 = x29;
xx30 = x30;
xx31 = x31;
if(xx0 > xx1){
xx0 = xx0 + xx1;
xx1 = xx0 - xx1;
xx0 = xx0 - xx1;
}
if(xx2 > xx3){
xx2 = xx2 + xx3;
xx3 = xx2 - xx3;
xx2 = xx2 - xx3;
}
if(xx4 > xx5){
xx4 = xx4 + xx5;
xx5 = xx4 - xx5;
xx4 = xx4 - xx5;
}
if(xx6 > xx7){
xx6 = xx6 + xx7;
xx7 = xx6 - xx7;
xx6 = xx6 - xx7;
}
if(xx8 > xx9){
xx8 = xx8 + xx9;
xx9 = xx8 - xx9;
xx8 = xx8 - xx9;
}
if(xx10 > xx11){
xx10 = xx10 + xx11;
xx11 = xx10 - xx11;
xx10 = xx10 - xx11;
}
if(xx12 > xx13){
xx12 = xx12 + xx13;
xx13 = xx12 - xx13;
xx12 = xx12 - xx13;
}
if(xx14 > xx15){
xx14 = xx14 + xx15;
xx15 = xx14 - xx15;
xx14 = xx14 - xx15;
}
|
23.01.2023 10:30:39
Тема: Re:Вопросы и ответы по C-MPA
|
Михаил Долинский
Темы: 2072
Сообщений: 49881
Мой профиль
|
if(xx0 > xx2){
xx0 = xx0 + xx2;
xx2 = xx0 - xx2;
xx0 = xx0 - xx2;
}
if(xx4 > xx6){
xx4 = xx4 +xx6;
xx6 = xx4 -xx6;
xx4 = xx4 -xx6;
}
if(xx8 > xx10){
xx8 = xx8 + xx10;
xx10 = xx8 - xx10;
xx8 = xx8 - xx10;
}
if(xx12 > xx14){
xx12 = xx12 + xx14;
xx14 = xx12 - xx14;
xx12 = xx12 - xx14;
}
if(xx1 > xx3){
xx1 = xx1 + xx3;
xx3 = xx1 - xx3;
xx1 = xx1 - xx3;
}
if(xx5 > xx7){
xx5 = xx5 + xx7;
xx7 = xx5 - xx7;
xx5 = xx5 - xx7;
}
if(xx9 > xx11){
xx9 = xx9 + xx11;
xx11 = xx9 - xx11;
xx9 = xx9 - xx11;
}
if(xx13 > xx15){
xx13 = xx13 + xx15;
xx15 = xx13 - xx15;
xx13 = xx13 - xx15;
}
if(xx0 > xx4){
xx0 = xx0 + xx4;
xx4 = xx0 - xx4;
xx0 = xx0 - xx4;
}
if(xx8 > xx12){
xx8 = xx8 + xx12;
xx12 = xx8 - xx12;
xx8 = xx8 - xx12;
}
if(xx1 > xx5){
xx1 = xx1 + xx5;
xx5 = xx1 - xx5;
xx1 = xx1 - xx5;
}
if(xx9 > xx13){
xx9 = xx9 + xx13;
xx13 = xx9 - xx13;
xx9 = xx9 - xx13;
}
if(xx2 > xx6){
xx2 = xx2 + xx6;
xx6 = xx2 - xx6;
xx2 = xx2 - xx6;
}
if(xx10 > xx14){
xx10 = xx10 + xx14;
xx14 = xx10 -xx14;
xx10 = xx10 - xx14;
}
if(xx3 > xx7){
xx3 = xx3 + xx7;
xx7 = xx3 - xx7;
xx3 = xx3 - xx7;
}
if(xx11 > xx15){
xx11 = xx11 + xx15;
xx15 = xx11 - xx15;
xx11 = xx11 - xx15;
}
if(xx0 > xx8){
xx0 = xx0 + xx8;
xx8 = xx0 - xx8;
xx0 = xx0 - xx8;
}
if(xx1 > xx9){
xx1 = xx1 + xx9;
xx9 = xx1 - xx9;
xx1 = xx1 - xx9;
}
if(xx2 > xx10){
xx2 = xx2 + xx10;
xx10 = xx2 - xx10;
xx2 = xx2 - xx10;
}
if(xx3 > xx11){
xx3 = xx3 + xx11;
xx11 = xx3 - xx11;
xx3 = xx3 - xx11;
}
if(xx4 > xx12){
xx4 = xx4 + xx12;
xx12 = xx4 - xx12;
xx4 = xx4 - xx12;
}
if(xx5 > xx13){
xx5 = xx5 + xx13;
xx13 = xx5 - xx13;
xx5 = xx5 - xx13;
}
if(xx6 > xx14){
xx6 = xx6 + xx14;
xx14 = xx6 - xx14;
xx6 = xx6 - xx14;
}
if(xx7 > xx15){
xx7 = xx7 + xx15;
xx15 = xx7 - xx15;
xx7 = xx7 - xx15;
}
if(xx5 > xx10){
xx5 = xx5 + xx10;
xx10 = xx5 - xx10;
xx5 = xx5 - xx10;
}
if(xx6 > xx9){
xx6 = xx6 + xx9;
xx9 = xx6 - xx9;
xx6 = xx6 - xx9;
}
if(xx3 > xx12){
xx3 = xx3 + xx12;
xx12 = xx3 - xx12;
xx3 = xx3 - xx12;
}
if(xx13 > xx14){
xx13 = xx13 + xx14;
xx14 = xx13 - xx14;
xx13 = xx13 - xx14;
}
if(xx7 > xx11){
xx7 = xx7 + xx11;
xx11 = xx7 - xx11;
xx7 = xx7 - xx11;
}
|
23.01.2023 10:31:45
Тема: Re:Вопросы и ответы по C-MPA
|
Михаил Долинский
Темы: 2072
Сообщений: 49881
Мой профиль
|
if(xx1 > xx2){
xx1 = xx1 + xx2;
xx2 = xx1 - xx2;
xx1 = xx1 - xx2;
}
if(xx4 > xx8){
xx4 = xx4 + xx8;
xx8 = xx4 - xx8;
xx4 = xx4 - xx8;
}
if(xx1 > xx4){
xx1 = xx1 + xx4;
xx4 = xx1 - xx4;
xx1 = xx1 - xx4;
}
if(xx7 > xx13){
xx7 = xx7 + xx13;
xx13 = xx7 - xx13;
xx7 = xx7 - xx13;
}
if(xx2 > xx8){
xx2 = xx2 + xx8;
xx8 = xx2 - xx8;
xx2 = xx2 - xx8;
}
if(xx11 > xx14){
xx11 = xx11 + xx14;
xx14 = xx11 - xx14;
xx11 = xx11 - xx14;
}
if(xx5 > xx6){
xx5 = xx5 + xx6;
xx6 = xx5 - xx6;
xx5 = xx5 - xx6;
}
if(xx9 > xx10){
xx9 = xx9 + xx10;
xx10 = xx9 - xx10;
xx9 = xx9 - xx10;
}
if(xx2 > xx4){
xx2 = xx2 + xx4;
xx4 = xx2 - xx4;
xx2 = xx2 - xx4;
}
if(xx11 > xx13){
xx11 = xx11 + xx13;
xx13 = xx11 - xx13;
xx11 = xx11 - xx13;
}
if(xx3 > xx8){
xx3 = xx3 + xx8;
xx8 = xx3 - xx8;
xx3 = xx3 - xx8;
}
if(xx7 > xx12){
xx7 = xx7 + xx12;
xx12 = xx7 - xx12;
xx7 = xx7 - xx12;
}
if(xx6 > xx8){
xx6 = xx6 + xx8;
xx8 = xx6 - xx8;
xx6 = xx6 - xx8;
}
if(xx10 > xx12){
xx10 = xx10 + xx12;
xx12 = xx10 - xx12;
xx10 = xx10 - xx12;
}
if(xx3 > xx5){
xx3 = xx3 + xx5;
xx5 = xx3 - xx5;
xx3 = xx3 - xx5;
}
if(xx7 > xx9){
xx7 = xx7 + xx9;
xx9 = xx7 - xx9;
xx7 = xx7 - xx9;
}
if(xx3 > xx4){
xx3 = xx3 + xx4;
xx4 = xx3 - xx4;
xx3 = xx3 - xx4;
}
if(xx5 > xx6){
xx5 = xx5 + xx6;
xx6 = xx5 - xx6;
xx5 = xx5 - xx6;
}
if(xx7 > xx8){
xx7 = xx7 + xx8;
xx8 = xx7 - xx8;
xx7 = xx7 - xx8;
}
if(xx9 > xx10){
xx9 = xx9 + xx10;
xx10 = xx9 - xx10;
xx9 = xx9 - xx10;
}
if(xx11 > xx12){
xx11 = xx11 + xx12;
xx12 = xx11 - xx12;
xx11 = xx11 - xx12;
}
if(xx6 > xx7){
xx6 = xx6 + xx7;
xx7 = xx6 - xx7;
xx6 = xx6 - xx7;
}
if(xx8 > xx9){
xx8 = xx8 + xx9;
xx9 = xx8 - xx9;
xx8 = xx8 - xx9;
}
if(xx16 > xx17){
xx16 = xx16 + xx17;
xx17 = xx16 - xx17;
xx16 = xx16 - xx17;
}
if(xx18 > xx19){
xx18 = xx18 + xx19;
xx19 = xx18 - xx19;
xx18 = xx18 - xx19;
}
if(xx20 > xx21){
xx20 = xx20 + xx21;
xx21 = xx20 - xx21;
xx20 = xx20 - xx21;
}
if(xx22 > xx23){
xx22 = xx22 + xx23;
xx23 = xx22 - xx23;
xx22 = xx22 - xx23;
}
if(xx24 > xx25){
xx24 = xx24 + xx25;
xx25 = xx24 - xx25;
xx24 = xx24 - xx25;
}
if(xx26 > xx27){
xx26 = xx26 + xx27;
xx27 = xx26 - xx27;
xx26 = xx26 - xx27;
}
if(xx28 > xx29){
xx28 = xx28 + xx29;
xx29 = xx28 - xx29;
xx28 = xx28 - xx29;
}
if(xx30 > xx31){
xx30 = xx30 + xx31;
xx31 = xx30 - xx31;
xx30 = xx30 - xx31;
}
|
23.01.2023 10:32:22
Тема: Re:Вопросы и ответы по C-MPA
|
Михаил Долинский
Темы: 2072
Сообщений: 49881
Мой профиль
|
//--------------------------------
if(xx16 > xx18){
xx16 = xx16 + xx18;
xx18 = xx16 - xx18;
xx16 = xx16 - xx18;
}
if(xx20 > xx22){
xx20 = xx20 + xx22;
xx22 = xx20 - xx22;
xx20 = xx20 - xx22;
}
if(xx24 > xx26){
xx24 = xx24 + xx26;
xx26 = xx24 - xx26;
xx24 = xx24 - xx26;
}
if(xx28 > xx30){
xx28 = xx28 + xx30;
xx30 = xx28 - xx30;
xx28 = xx28 - xx30;
}
if(xx17 > xx19){
xx17 = xx17 + xx19;
xx19 = xx17 - xx19;
xx17 = xx17 - xx19;
}
if(xx21 > xx23){
xx21 = xx21 + xx23;
xx23 = xx21 - xx23;
xx21 = xx21 - xx23;
}
if(xx25 > xx27){
xx25 = xx25 + xx27;
xx27 = xx25 - xx27;
xx25 = xx25 - xx27;
}
if(xx29 > xx31){
xx29 = xx29 + xx31;
xx31 = xx29 - xx31;
xx29 = xx29 - xx31;
}
//-------------------------
if(xx16 > xx20){
xx16 = xx16 + xx20;
xx20 = xx16 - xx20;
xx16 = xx16 - xx20;
}
if(xx24 > xx28){
xx24 = xx24 + xx28;
xx28 = xx24 - xx28;
xx24 = xx24 - xx28;
}
if(xx17 > xx21){
xx17 = xx17 + xx21;
xx21 = xx17 - xx21;
xx17 = xx17 - xx21;
}
if(xx25 > xx29){
xx25 = xx25 + xx29;
xx29 = xx25 - xx29;
xx25 = xx25 - xx29;
}
if(xx18 > xx22){
xx18 = xx18 + xx22;
xx22 = xx18 - xx22;
xx18 = xx18 - xx22;
}
if(xx26 > xx30){
xx26 = xx26 + xx30;
xx30 = xx26 - xx30;
xx26 = xx26 - xx30;
}
if(xx19 > xx23){
xx19 = xx19 + xx23;
xx23 = xx19 - xx23;
xx19 = xx19 - xx23;
}
if(xx27 > xx31){
xx27 = xx27 + xx31;
xx31 = xx27 - xx31;
xx27 = xx27 - xx31;
}
//------------------
if(xx16 > xx24){
xx16 = xx16 + xx24;
xx24 = xx16 - xx24;
xx16 = xx16 - xx24;
}
if(xx17 > xx25){
xx17 = xx17 + xx25;
xx25 = xx17 - xx25;
xx17 = xx17 - xx25;
}
if(xx18 > xx26){
xx18 = xx18 + xx26;
xx26 = xx18 - xx26;
xx18 = xx18 - xx26;
}
if(xx19 > xx27){
xx19 = xx19 + xx27;
xx27 = xx19 - xx27;
xx19 = xx19 - xx27;
}
if(xx20 > xx28){
xx20 = xx20 + xx28;
xx28 = xx20 - xx28;
xx20 = xx20 - xx28;
}
if(xx21 > xx29){
xx21 = xx21 + xx29;
xx29 = xx21 - xx29;
xx21 = xx21 - xx29;
}
if(xx22 > xx30){
xx22 = xx22 + xx30;
xx30 = xx22 - xx30;
xx22 = xx22 - xx30;
}
if(xx23 > xx31){
xx23 = xx23 + xx31;
xx31 = xx23 - xx31;
xx23 = xx23 - xx31;
}
//---------------------
if(xx21 > xx26){
xx21 = xx21 + xx26;
xx26 = xx21 - xx26;
xx21 = xx21 - xx26;
}
if(xx22 > xx25){
xx22 = xx22 + xx25;
xx25 = xx22 - xx25;
xx22 = xx22 - xx25;
}
if(xx19 > xx28){
xx19 = xx19 + xx28;
xx28 = xx19 - xx28;
xx19 = xx19 - xx28;
}
if(xx29 > xx30){
xx29 = xx29 + xx30;
xx30 = xx29 - xx30;
xx29 = xx29 - xx30;
}
if(xx23 > xx27){
xx23 = xx23 + xx27;
xx27 = xx23 - xx27;
xx23 = xx23 - xx27;
}
if(xx17 > xx18){
xx17 = xx17 + xx18;
xx18 = xx17 - xx18;
xx17 = xx17 - xx18;
}
if(xx20 > xx24){
xx20 = xx20 + xx24;
xx24 = xx20 - xx24;
xx20 = xx20 - xx24;
}
//-----------------
if(xx17 > xx20){
xx17 = xx17 + xx20;
xx20 = xx17 - xx20;
xx17 = xx17 - xx20;
}
if(xx23 > xx29){
xx23 = xx23 + xx29;
xx29 = xx23 - xx29;
xx23 = xx23 - xx29;
}
if(xx18 > xx24){
xx18 = xx18 + xx24;
xx24 = xx18 - xx24;
xx18 = xx18 - xx24;
}
if(xx27 > xx30){
xx27 = xx27 + xx30;
xx30 = xx27 - xx30;
xx27 = xx27 - xx30;
}
if(xx21 > xx22){
xx21 = xx21 + xx22;
xx22 = xx21 - xx22;
xx21 = xx21 - xx22;
}
if(xx25 > xx26){
xx25 = xx25 + xx26;
xx26 = xx25 - xx26;
xx25 = xx25 - xx26;
}
//----------------
if(xx18 > xx20){
xx18 = xx18 + xx20;
xx20 = xx18 - xx20;
xx18 = xx18 - xx20;
}
if(xx27 > xx29){
xx27 = xx27 + xx29;
xx29 = xx27 - xx29;
xx27 = xx27 - xx29;
}
if(xx19 > xx24){
xx19 = xx19 + xx24;
xx24 = xx19 - xx24;
xx19 = xx19 - xx24;
}
if(xx23 > xx28){
xx23 = xx23 + xx28;
xx28 = xx23 - xx28;
xx23 = xx23 - xx28;
}
//-----------------
if(xx22 > xx24){
xx22 = xx22 + xx24;
xx24 = xx22 - xx24;
xx22 = xx22 - xx24;
}
if(xx26 > xx28){
xx26 = xx26 + xx28;
xx28 = xx26 - xx28;
xx26 = xx26 - xx28;
}
if(xx19 > xx21){
xx19 = xx19 + xx21;
xx21 = xx19 - xx21;
xx19 = xx19 - xx21;
}
if(xx23 > xx25){
xx23 = xx23 + xx25;
xx25 = xx23 - xx25;
xx23 = xx23 - xx25;
}
//------------------
if(xx19 > xx20){
xx19 = xx19 + xx20;
xx20 = xx19 - xx20;
xx19 = xx19 - xx20;
}
if(xx21 > xx22){
xx21 = xx21 + xx22;
xx22 = xx21 - xx22;
xx21 = xx21 - xx22;
}
if(xx23 > xx24){
xx23 = xx23 + xx24;
xx24 = xx23 - xx24;
xx23 = xx23 - xx24;
}
if(xx25 > xx26){
xx25 = xx25 + xx26;
xx26 = xx25 - xx26;
xx25 = xx25 - xx26;
}
if(xx27 > xx28){
xx27 = xx27 + xx28;
xx28 = xx27 - xx28;
xx27 = xx27 - xx28;
}
//----------------
if(xx22 > xx23){
xx22 = xx22 + xx23;
xx23 = xx22 - xx23;
xx22 = xx22 - xx23;
}
if(xx24 > xx25){
xx24 = xx24 + xx25;
xx25 = xx24 - xx25;
xx24 = xx24 - xx25;
}
if(xx0 > xx16){
xx0 = xx0 + xx16;
xx16 = xx0 - xx16;
xx0 = xx0 - xx16;
}
if(xx8 > xx24){
xx8 = xx8 + xx24;
xx24 = xx8 - xx24;
xx8 = xx8 - xx24;
}
if(xx8 > xx16){
xx8 = xx8 + xx16;
xx16 = xx8 - xx16;
xx8 = xx8 - xx16;
}
if(xx4 > xx20){
xx4 = xx4 + xx20;
xx20 = xx4 - xx20;
xx4 = xx4 - xx20;
}
if(xx12 > xx28){
xx12 = xx12 + xx28;
xx28 = xx12 - xx28;
xx12 = xx12 - xx28;
}
if(xx12 > xx20){
xx12 = xx12 + xx20;
xx20 = xx12 - xx20;
xx12 = xx12 - xx20;
}
if(xx4 > xx8){
xx4 = xx4 + xx8;
xx8 = xx4 - xx8;
xx4 = xx4 - xx8;
}
if(xx12 > xx16){
xx12 = xx12 + xx16;
xx16 = xx12 - xx16;
xx12 = xx12 - xx16;
}
if(xx20 > xx24){
xx20 = xx20 + xx24;
xx24 = xx20 - xx24;
xx20 = xx20 - xx24;
}
if(xx2 > xx18){
xx2 = xx2 + xx18;
xx18 = xx2 - xx18;
xx2 = xx2 - xx18;
}
if(xx10 > xx26){
xx10 = xx10 + xx26;
xx26 = xx10 - xx26;
xx10 = xx10 - xx26;
}
if(xx10 > xx18){
xx10 = xx10 + xx18;
xx18 = xx10 - xx18;
xx10 = xx10 - xx18;
}
if(xx6 > xx22){
xx6 = xx6 + xx22;
xx22 = xx6 - xx22;
xx6 = xx6 - xx22;
}
if(xx14 > xx30){
xx14 = xx14 + xx30;
xx30 = xx14 - xx30;
xx14 = xx14 - xx30;
}
if(xx14 > xx22){
xx14 = xx14 + xx22;
xx22 = xx14 - xx22;
xx14 = xx14 - xx22;
}
if(xx6 > xx10){
xx6 = xx6 + xx10;
xx10 = xx6 - xx10;
xx6 = xx6 - xx10;
}
if(xx14 > xx18){
xx14 = xx14 + xx18;
xx18 = xx14 - xx18;
xx14 = xx14 - xx18;
}
if(xx22 > xx26){
xx22 = xx22 + xx26;
xx26 = xx22 - xx26;
xx22 = xx22 - xx26;
}
if(xx2 > xx4){
xx2 = xx2 + xx4;
xx4 = xx2 - xx4;
xx2 = xx2 - xx4;
}
if(xx6 > xx8){
xx6 = xx6 + xx8;
xx8 = xx6 - xx8;
xx6 = xx6 - xx8;
}
if(xx10 > xx12){
xx10 = xx10 + xx12;
xx12 = xx10 - xx12;
xx10 = xx10 - xx12;
}
if(xx14 > xx16){
xx14 = xx14 + xx16;
xx16 = xx14 - xx16;
xx14 = xx14 - xx16;
}
if(xx18 > xx20){
xx18 = xx18 + xx20;
xx20 = xx18 - xx20;
xx18 = xx18 - xx20;
}
if(xx22 > xx24){
xx22 = xx22 + xx24;
xx24 = xx22 - xx24;
xx22 = xx22 - xx24;
}
if(xx26 > xx28){
xx26 = xx26 + xx28;
xx28 = xx26 - xx28;
xx26 = xx26 - xx28;
}
|
23.01.2023 10:32:36
Тема: Re:Вопросы и ответы по C-MPA
|
Михаил Долинский
Темы: 2072
Сообщений: 49881
Мой профиль
|
//------------------------------
if(xx1 > xx17){
xx1 = xx1 + xx17;
xx17 = xx1 - xx17;
xx1 = xx1 - xx17;
}
if(xx9 > xx25){
xx9 = xx9 + xx25;
xx25 = xx9 - xx25;
xx9 = xx9 - xx25;
}
if(xx9 > xx17){
xx9 = xx9 + xx17;
xx17 = xx9 - xx17;
xx9 = xx9 - xx17;
}
if(xx5 > xx21){
xx5 = xx5 + xx21;
xx21 = xx5 - xx21;
xx5 = xx5 - xx21;
}
if(xx13 > xx29){
xx13 = xx13 + xx29;
xx29 = xx13 - xx29;
xx13 = xx13 - xx29;
}
if(xx13 > xx21){
xx13 = xx13 + xx21;
xx21 = xx13 - xx21;
xx13 = xx13 - xx21;
}
if(xx5 > xx9){
xx5 = xx5 + xx9;
xx9 = xx5 - xx9;
xx5 = xx5 - xx9;
}
if(xx13 > xx17){
xx13 = xx13 + xx17;
xx17 = xx13 - xx17;
xx13 = xx13 - xx17;
}
if(xx21 > xx25){
xx21 = xx21 + xx25;
xx25 = xx21 - xx25;
xx21 = xx21 - xx25;
}
if(xx3 > xx19){
xx3 = xx3 + xx19;
xx19 = xx3 - xx19;
xx3 = xx3 - xx19;
}
if(xx11 > xx27){
xx11 = xx11 + xx27;
xx27 = xx11 - xx27;
xx11 = xx11 - xx27;
}
if(xx11 > xx19){
xx11 = xx11 + xx19;
xx19 = xx11 - xx19;
xx11 = xx11 - xx19;
}
if(xx7 > xx23){
xx7 = xx7 + xx23;
xx23 = xx7 - xx23;
xx7 = xx7 - xx23;
}
if(xx15 > xx31){
xx15 = xx15 + xx31;
xx31 = xx15 - xx31;
xx15 = xx15 - xx31;
}
if(xx15 > xx23){
xx15 = xx15 + xx23;
xx23 = xx15 - xx23;
xx15 = xx15 - xx23;
}
if(xx7 > xx11){
xx7 = xx7 + xx11;
xx11 = xx7 - xx11;
xx7 = xx7 - xx11;
}
if(xx15 > xx19){
xx15 = xx15 + xx19;
xx19 = xx15 - xx19;
xx15 = xx15 - xx19;
}
if(xx23 > xx27){
xx23 = xx23 + xx27;
xx27 = xx23 - xx27;
xx23 = xx23 - xx27;
}
if(xx3 > xx5){
xx3 = xx3 + xx5;
xx5 = xx3 - xx5;
xx3 = xx3 - xx5;
}
if(xx7 > xx9){
xx7 = xx7 + xx9;
xx9 = xx7 - xx9;
xx7 = xx7 - xx9;
}
if(xx11 > xx13){
xx11 = xx11 + xx13;
xx13 = xx11 - xx13;
xx11 = xx11 - xx13;
}
if(xx15 > xx17){
xx15 = xx15 + xx17;
xx17 = xx15 - xx17;
xx15 = xx15 - xx17;
}
if(xx19 > xx21){
xx19 = xx19 + xx21;
xx21 = xx19 - xx21;
xx19 = xx19 - xx21;
}
if(xx23 > xx25){
xx23 = xx23 + xx25;
xx25 = xx23 - xx25;
xx23 = xx23 - xx25;
}
if(xx27 > xx29){
xx27 = xx27 + xx29;
xx29 = xx27 - xx29;
xx27 = xx27 - xx29;
}
if(xx1 > xx2){
xx1 = xx1 + xx2;
xx2 = xx1 - xx2;
xx1 = xx1 - xx2;
}
if(xx3 > xx4){
xx3 = xx3 + xx4;
xx4 = xx3 - xx4;
xx3 = xx3 - xx4;
}
if(xx5 > xx6){
xx5 = xx5 + xx6;
xx6 = xx5 - xx6;
xx5 = xx5 - xx6;
}
if(xx7 > xx8){
xx7 = xx7 + xx8;
xx8 = xx7 - xx8;
xx7 = xx7 - xx8;
}
if(xx9 > xx10){
xx9 = xx9 + xx10;
xx10 = xx9 - xx10;
xx9 = xx9 - xx10;
}
if(xx11 > xx12){
xx11 = xx11 + xx12;
xx12 = xx11 - xx12;
xx11 = xx11 - xx12;
}
if(xx13 > xx14){
xx13 = xx13 + xx14;
xx14 = xx13 - xx14;
xx13 = xx13 - xx14;
}
if(xx15 > xx16){
xx15 = xx15 + xx16;
xx16 = xx15 - xx16;
xx15 = xx15 - xx16;
}
if(xx17 > xx18){
xx17 = xx17 + xx18;
xx18 = xx17 - xx18;
xx17 = xx17 - xx18;
}
if(xx19 > xx20){
xx19 = xx19 + xx20;
xx20 = xx19 - xx20;
xx19 = xx19 - xx20;
}
if(xx21> xx22){
xx21 = xx21 + xx22;
xx22 = xx21 - xx22;
xx21 = xx21 - xx22;
}
if(xx23 > xx24){
xx23 = xx23 + xx24;
xx24 = xx23 - xx24;
xx23 = xx23 - xx24;
}
if(xx25 > xx26){
xx25 = xx25 + xx26;
xx26 = xx25 - xx26;
xx25 = xx25 - xx26;
}
if(xx27 > xx28){
xx27 = xx27 + xx28;
xx28 = xx27 - xx28;
xx27 = xx27 - xx28;
}
if(xx29 > xx30){
xx29 = xx29 + xx30;
xx30 = xx29 - xx30;
xx29 = xx29 - xx30;
}
y0 = xx0;
y1 = xx1;
y2 = xx2;
y3 = xx3;
y4 = xx4;
y5 = xx5;
y6 = xx6;
y7 = xx7;
y8 = xx8;
y9 = xx9;
y10 = xx10;
y11 = x
|
23.01.2023 11:19:46
Тема: Re:Вопросы и ответы по C-MPA
|
Михаил Долинский
Темы: 2072
Сообщений: 49881
Мой профиль
|
Нельзя присваивать значения глобальным переменным
и писать первую строку unsigned __in __bits(8) a = 3; вместо ошибки в тесте
17.11.2022 11:01:08 17.11.2022 11:01:12 Столяров Виктор Архитектура вычислительных систем (ПО4/ИТ3/ПИ2) - 2022 6. Максимум отрицания 0
[test1]: Тест не прошел: res sgn: 0. src.mpc
DelTA3 at NIT7
unsigned __in __bits(8) a = 3;
unsigned __in __bits(8) b = -8;
unsigned __in __bits(8) c = 9;
unsigned __out __bits(8) res;
void main() {
int a1;
a1 = -1*a;
int b1;
b1 = -1*b;
int c1;
c1 = -1*c;
if((a1 > b1) && (a1 > c1))
res = a1;
if((b1 > a1) && (b1 > c1))
res = b1;
if((c1 > a1) && (c1 > b1))
res = c1;
}
|
|