fix: Кодировка
This commit is contained in:
138
Labv3.cpp
138
Labv3.cpp
@ -1,69 +1,69 @@
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> LAB3
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ணࠬ<E0AEA3><E0A0AC>
|
||||
// <EFBFBD><EFBFBD><EFBFBD>ᨢ<EFBFBD> <20> ᯮᮡ<E1AFAE> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>樨
|
||||
|
||||
// <EFBFBD><EFBFBD>४⨢<EFBFBD> <20>९<EFBFBD><E0A5AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD>祭<EFBFBD><EFBFBD> 䠩<><E4A0A9><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ᠭ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>⨯<EFBFBD> <20>-権
|
||||
// <EFBFBD> 楫<><E6A5AB> ᮮ<>饭<EFBFBD><E9A5AD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> ⨯<><E2A8AF> <20>-権 <20> <20><> <20><><EFBFBD>㬥<EFBFBD><E3ACA5><EFBFBD><EFBFBD>
|
||||
#include <dos.h>
|
||||
#include <bios.h>
|
||||
#include <stdio.h>
|
||||
#include <conio.h>
|
||||
// #pragma inline // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>祭<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><E0AEA5><EFBFBD><EFBFBD><EFBFBD> <20><>ᥬ<EFBFBD><E1A5AC><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>६<EFBFBD><E0A5AC><EFBFBD><EFBFBD><EFBFBD>
|
||||
int iB=0x1234;
|
||||
int A[90]={0,1,2,3,4,5,6,7,8,9};
|
||||
|
||||
// <EFBFBD>᭮<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ணࠬ<E0AEA3><E0A0AC> - <20>㭪<EFBFBD><E3ADAA><EFBFBD>
|
||||
// void - <EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>祭<EFBFBD><E7A5AD>
|
||||
void main(void)
|
||||
{
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>६<EFBFBD><E0A5AC><EFBFBD><EFBFBD><EFBFBD>
|
||||
int iA=0x5678;
|
||||
clrscr();
|
||||
printf ("\n <EFBFBD>ணࠬ<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ᨢ<EFBFBD> \n");
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>塞 <20><><EFBFBD>ᨢ <20><> <20><EFBFBD><E0AEA2> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>
|
||||
for (int i=0; i<10; i++)
|
||||
{
|
||||
// ??????? <EFBFBD><EFBFBD>⠢<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
printf (" \n %d ", A[i]);
|
||||
}
|
||||
getch();
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>塞 <20><><EFBFBD>ᨢ <20><> <20><>ᥬ<EFBFBD><E1A5AC><EFBFBD><EFBFBD><EFBFBD>
|
||||
asm mov si,0
|
||||
e2:
|
||||
asm {
|
||||
lea bx,A
|
||||
mov cx,10
|
||||
mov ax,0
|
||||
};
|
||||
e1: asm mov [bx],ax // ???? <EFBFBD>롥<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᯮᮡ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>樨
|
||||
asm add bx,2
|
||||
asm loop e1
|
||||
// ??? <EFBFBD>뢥<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ᨢ
|
||||
asm add si,10 // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 蠣 <20><><EFBFBD>ᨢ<EFBFBD>
|
||||
asm mov ax,100
|
||||
asm cmp ax,si
|
||||
asm ja e2
|
||||
// ??? <EFBFBD>뢥<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>㬥<EFBFBD><E3ACA5><EFBFBD><EFBFBD> <20><><EFBFBD>ᨢ
|
||||
for (i=0; i<20; i=i+4)
|
||||
{ printf (" \n ");
|
||||
for (int j=0; j<4; j++)
|
||||
{ printf (" "); // ???? <EFBFBD><EFBFBD>⠢<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
}
|
||||
}
|
||||
getch();
|
||||
}
|
||||
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// 1. <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20>ணࠬ<E0AEA3><E0A0AC> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>୮<EFBFBD><E0ADAE> <20><><EFBFBD>ᨢ<EFBFBD> <20><> <20><> <20> <20><><EFBFBD>
|
||||
// <EFBFBD>뢥<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><>࠭ <20><><EFBFBD>祭<EFBFBD><E7A5AD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⮢ <20><><EFBFBD>ᨢ<EFBFBD>
|
||||
// 2. <EFBFBD><EFBFBD><EFBFBD>⠩<EFBFBD><EFBFBD> <20><><EFBFBD>ᨢ <20><>㬥<EFBFBD><E3ACA5><EFBFBD><EFBFBD>. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ப<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>,
|
||||
// <EFBFBD>ᯮ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ࠧ<><E0A0A7><EFBFBD> ᯮᮡ<E1AFAE> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>樨
|
||||
// - <EFBFBD><EFBFBD>ᢥ<EFBFBD><EFBFBD><EFBFBD>-ॣ<><E0A5A3><EFBFBD><EFBFBD><E0AEA2> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// - <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD><EFBFBD>᭠<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// <EFBFBD>ࠢ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⢮ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD> ᯮᮡ<E1AFAE><E1AEA1> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>樨.
|
||||
// 3. <EFBFBD><EFBFBD>।<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ᨢ<EFBFBD> <20> ᥣ<><E1A5A3><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20>ᯮ<EFBFBD>짮<EFBFBD>. TD
|
||||
// 4. <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ணࠬ<E0AEA3><E0A0AC>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> ࠧ<><E0A0A7><EFBFBD> १<><E0A5A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> ࠧ<><E0A0A7><EFBFBD>
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
||||
// Работа LAB3
|
||||
// Шаблон программы
|
||||
// Массивы и способы адресации
|
||||
|
||||
// Директивы Препроцессора
|
||||
// Включение файлов в которых описаны прототипы ф-ций
|
||||
// с целью сообщения компилятору о типах ф-ций и их аргументах
|
||||
#include <dos.h>
|
||||
#include <bios.h>
|
||||
#include <stdio.h>
|
||||
#include <conio.h>
|
||||
// #pragma inline // Подключение встроенного Ассемблера
|
||||
|
||||
// Объявление переменных
|
||||
int iB=0x1234;
|
||||
int A[90]={0,1,2,3,4,5,6,7,8,9};
|
||||
|
||||
// Основная программа - функция
|
||||
// void - она не возвращ значений
|
||||
void main(void)
|
||||
{
|
||||
// Объявление переменных
|
||||
int iA=0x5678;
|
||||
clrscr();
|
||||
printf ("\n Программа заполнения массива \n");
|
||||
// Заполняем массив на уровне команд Си
|
||||
for (int i=0; i<10; i++)
|
||||
{
|
||||
// ??????? Вставте команды
|
||||
printf (" \n %d ", A[i]);
|
||||
}
|
||||
getch();
|
||||
// Заполняем массив из ассемблера
|
||||
asm mov si,0
|
||||
e2:
|
||||
asm {
|
||||
lea bx,A
|
||||
mov cx,10
|
||||
mov ax,0
|
||||
};
|
||||
e1: asm mov [bx],ax // ???? Выберите способ адресации
|
||||
asm add bx,2
|
||||
asm loop e1
|
||||
// ??? Выведите одном массив
|
||||
asm add si,10 // Задается шаг массива
|
||||
asm mov ax,100
|
||||
asm cmp ax,si
|
||||
asm ja e2
|
||||
// ??? Выведите двумерный массив
|
||||
for (i=0; i<20; i=i+4)
|
||||
{ printf (" \n ");
|
||||
for (int j=0; j<4; j++)
|
||||
{ printf (" "); // ???? Вставте команду
|
||||
}
|
||||
}
|
||||
getch();
|
||||
}
|
||||
|
||||
// Задания
|
||||
// 1. Напишите две программы заполнения одномерного массива на Си и Асс
|
||||
// выведите на экран значения элементов массива
|
||||
// 2. Считайте массив двумерным. Заполните его четные строки любым числом,
|
||||
// используя разные способы адресации
|
||||
// - косвенно-регистровая адресация
|
||||
// - базово-индексная адресация
|
||||
// Сравните количество команд при двух способах адресации.
|
||||
// 3. Определите место массива в сегменте данных с использов. TD
|
||||
// 4. Напишите программу, которая дает разный результат в разных
|
||||
// моделях памяти.
|
||||
Reference in New Issue
Block a user