48682 (Разработка средства функционального диагностирования вычислительных устройств), страница 3
Описание файла
Документ из архива "Разработка средства функционального диагностирования вычислительных устройств", который расположен в категории "". Всё это находится в предмете "информатика" из 1 семестр, которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "информатика, программирование" в общих файлах.
Онлайн просмотр документа "48682"
Текст 3 страницы из документа "48682"
}}
// –
void __fastcall TForm1: StrGr1 ()
{
int L, as1, as2, as3, as4, as5, d2a;
as1 = n/4 + n % 2;
as2 = as1 + L;
as3 = as2/2 + as2% 2;
as4 = as3/2 + as3% 2;
d2a = 4*n-k +5;
L = n-k;
StringGrid1->Cells[1] [5] = d2a;
StringGrid1->Cells[1] [6] = d2a+1;
for (int i=2; iColCount; i++) {
StringGrid1->Cells[i] [5] = StringGrid1->Cells [i-1] [5]+2;
StringGrid1->Cells[i] [6] = StringGrid1->Cells[i] [6]+2;
}
StringGrid1->Cells[as1] [1] = n – 3;
StringGrid1->Cells[as1] [2] = n – 2;
StringGrid1->Cells[as1] [3] = n – 1;
StringGrid1->Cells[as1] [4] = n;
for (int i=(as1–1); i>=0; i–)
for (int j=4; j<=0; j–)
StringGrid1->Cells[i] [j] = StringGrid1->Cells [i+1] [j] – 4;
if (n % 2 == 1) {
StringGrid1->Cells[1] [1] = 0;
StringGrid1->Cells[1] [2] = 0;
StringGrid1->Cells[1] [3] = 0;
StringGrid1->Cells[1] [4] = 1;
}
Cycle (StringGrid1, as2, (as2-L/2), – 1, as1,0, – 2);
Cycle (StringGrid1, as3, (as3-L/4), – 1, as2,0, – 2);
Cycle (StringGrid1, (as1+1), (as2-L/2–1), 1,0,4,2);
IF1 (StringGrid1, as3+1, as2+1, as2+2);
IF1 (StringGrid1, as5, as3+1, as3+2);
IF2 (StringGrid1, as5+1, as5, n+2, n+1);
}
// –
void __fastcall TForm1: StrGr2 ()
{
int d2b, d1, d3, bs1, tail, head, m, m1;
d2b = 8*n-5*k-3;
d1 = (n-k)*2;
d3 = n-k-3;
bs1= n/4–2;
StringGrid2->Cells[1] [5] = d2b;
StringGrid2->Cells[1] [6] = d2b+1;
for (int i=2; iColCount; i++) {
StringGrid2->Cells[i] [5] = StringGrid2->Cells [i-1] [5]+2;
StringGrid2->Cells[i] [6] = StringGrid2->Cells[i] [6]+2;
}
StringGrid2->Cells[bs1] [1] = n – 3;
StringGrid2->Cells[bs1] [2] = n – 2;
StringGrid2->Cells[bs1] [3] = n – 1;
StringGrid2->Cells[bs1] [4] = n;
for (int i=(bs1–1); i>d2b; i–)
for (int j=0; j<4; j++)
StringGrid2->Cells[i] [j] = StringGrid2->Cells [i+1] [j] – 4;
IF1 (StringGrid2, d1+2, d1, d3–2);
tail+=2;
head+=2;
IF1 (StringGrid2, d1+2, d1, d3–2);
if (n % 2 == 1) {
StringGrid2->Cells [head+2] [1] = StringGrid2->Cells[head] [6];
StringGrid2->Cells [head+2] [2] = StringGrid2->Cells[head] [5];
StringGrid2->Cells [head+2] [3] = StringGrid2->Cells [d3+1] [6];
StringGrid2->Cells [head+2] [4] = StringGrid2->Cells [d3+1] [5];
}
tail= d3;
m= 4*(k-1);
head = bs1+2;
for (int i=1; i { IF2 (StringGrid2, head, tail, m, m-1); tail+=2; head+=2; } IF1 (StringGrid2, head, d1, d1+1); IF1 (StringGrid2, head, tail, n/4–2); IF2 (StringGrid2, head, tail, 2*n+4,2*n+3); } Результаты работы программы В программе была задана разрядность n = 36 и количество отбрасываемых разрядов k = 31. Разбиение МКП представлено на рис. 2. Блоки контроля БКА и БКБ представлены в приложении 4. Описание схемы блока контроля БКА приведено в табл. 4. Таблица 4 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Вх1 1 5 9 13 17 21 25 29 33 118 122 126 128 132 136 Вх2 2 6 10 14 18 22 26 30 34 119 123 127 129 133 137 Вх1 3 7 11 15 19 23 27 31 35 120 124 0 130 134 138 Вх2 4 8 12 16 20 24 28 32 36 121 125 0 131 135 139 Вых1 118 120 122 124 126 128 130 132 134 136 138 140 142 144 146 Вых2 119 121 123 125 127 129 131 133 135 137 139 141 143 145 147 Таблица 4 продолжение 16 17 18 19 20 21 Вх1 140 142 146 150 152 38 Вх2 141 143 147 151 153 37 Вх1 0 144 148 0 154 157 Вх2 0 145 149 0 155 158 Вых1 148 150 152 153 156 159 Вых2 149 151 153 154 157 160 Описание схемы блока контроля БКБ приведено в табл. 5. Таблица 5 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Вх1 39 43 55 59 63 67 71 161 165 171 177 169 177 167 185 Вх2 40 44 56 60 64 68 72 162 166 172 178 170 178 168 186 Вх1 41 0 57 61 65 69 73 163 53 173 51 179 49 183 47 Вх2 42 0 58 62 66 70 74 164 54 174 52 180 50 184 48 Вых1 161 163 165 167 169 171 173 175 177 179 181 183 185 187 189 Вых2 162 164 166 168 170 172 174 176 178 180 182 184 186 188 190 Таблица 5 продолжение 16 17 18 19 Вх1 175 189 191 76 Вх2 176 190 192 75 Вх1 187 45 193 195 Вх2 188 46 197 196 Вых1 191 193 195 197 Вых2 192 194 196 198 Список литературы Рабинович З.Л., Раманаускас В.А. Типовые операции в вычислительных машинах. – Киев: Техника, 1980. Савельев А.Я. Прикладная теория цифровых автоматов. – М.: Высш. шк. 1987.