fix: Кодировка
This commit is contained in:
280
Labv4.cpp
280
Labv4.cpp
@ -1,141 +1,141 @@
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ୠ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Lab 4
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <20><><EFBFBD><EFBFBD>७<EFBFBD><E0A5AD> <20>६<EFBFBD><E0A5AC><EFBFBD>. <20><><EFBFBD><EFBFBD>
|
||||
//
|
||||
|
||||
|
||||
#include<iostream.h>
|
||||
#include<conio.h>
|
||||
#include<stdio.h>
|
||||
|
||||
void main()
|
||||
{
|
||||
long int cl2,cl1,c1,c2;
|
||||
unsigned long int t1,t2,t3;
|
||||
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>⠭<EFBFBD><E2A0AD> <20><><EFBFBD><EFBFBD>稪<EFBFBD>
|
||||
/* asm{
|
||||
mov ax,00110110B // 00 11 011 0
|
||||
out 43h,ax
|
||||
mov ax,0000000000000000B
|
||||
out 40h,al
|
||||
mov al,ah
|
||||
out 40h,al
|
||||
}
|
||||
*/
|
||||
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD>७<EFBFBD><EFBFBD> <20>६<EFBFBD><E0A5AC><EFBFBD> <20>믮<EFBFBD><EBAFAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>⮢<EFBFBD><E2AEA2> <20>ணࠬ<E0AEA3><E0A0AC> 1
|
||||
// <EFBFBD> ⨪<><E2A8AA> (<28> <20><><EFBFBD><EFBFBD>뢠<EFBFBD><EBA2A0><EFBFBD><EFBFBD> <20><> 0-<2D><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ⠩<><E2A0A9><EFBFBD><EFBFBD>)
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD>稪 ⨪<><E2A8AA> <20>祩<EFBFBD><E7A5A9> 46<EFBFBD> - <EFBFBD><EFBFBD><EFBFBD><EFBFBD>訩 <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
asm{
|
||||
mov ax,0x46
|
||||
mov es,ax
|
||||
mov bx,0xC
|
||||
mov ax,[es:bx]
|
||||
mov cx,[es:(bx+2)]
|
||||
}
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>砫쭮<E7A0AB> <20><><EFBFBD>祭<EFBFBD><E7A5AD> <20><><EFBFBD><EFBFBD>襥 <20> <20><><EFBFBD><EFBFBD>襥 ???
|
||||
// cl2= ; cl1= ;
|
||||
c1=cl2+cl1*0x10000;
|
||||
|
||||
//<EFBFBD><EFBFBD><EFBFBD>⮢<EFBFBD><EFBFBD> <20>ணࠬ<E0AEA3><E0A0AC> 1
|
||||
asm mov cx,1000
|
||||
met1: asm {
|
||||
push cx
|
||||
mov cx,1000
|
||||
}
|
||||
met2: asm {
|
||||
loop met2
|
||||
pop cx
|
||||
loop met1
|
||||
}
|
||||
|
||||
//
|
||||
asm{
|
||||
mov ax,0x46
|
||||
mov es,ax
|
||||
mov bx,0xC
|
||||
mov ax,[es:bx]
|
||||
mov cx,[es:(bx+2)]
|
||||
}
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>筮<EFBFBD> <20><><EFBFBD>祭<EFBFBD><E7A5AD> ???
|
||||
// cl2=_AX; cl1= ;
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 楫<><E6A5AB> -
|
||||
c2=cl2+cl1*0x10000;
|
||||
|
||||
// clrscr();
|
||||
// printf("\n<EFBFBD><EFBFBD>ࢮ<EFBFBD> - %d\n",c1);
|
||||
// printf("<EFBFBD><EFBFBD><EFBFBD> - %d\n",c2);
|
||||
cout<<"\n<EFBFBD>६<EFBFBD> <20>믮<EFBFBD><EBAFAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>⮢<EFBFBD><E2AEA2> <20>ணࠬ<E0AEA3><E0A0AC> 1\n";
|
||||
cout<<"COUNTs: "<<c2-c1<<"\n";
|
||||
printf("\n <EFBFBD><EFBFBD><EFBFBD><EFBFBD>쪮 <20><><EFBFBD><EFBFBD><EFBFBD>ᥪ㭤 ??");
|
||||
getch();
|
||||
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD>७<EFBFBD><EFBFBD> <20>६<EFBFBD><E0A5AC><EFBFBD> <20>믮<EFBFBD><EBAFAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>⮢<EFBFBD><E2AEA2> <20>ணࠬ<E0AEA3><E0A0AC>
|
||||
// <EFBFBD><EFBFBD> ᮤ<>ন<EFBFBD><E0A6A8><EFBFBD><EFBFBD> ॣ<><E0A5A3><EFBFBD><EFBFBD><EFBFBD> ⠩<><E2A0A9><EFBFBD><EFBFBD>
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD> 43h - <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ࠢ<EFBFBD><E0A0A2><EFBFBD><EFBFBD><EFBFBD> ⠩<><E2A0A9>
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD> 40h - <EFBFBD><EFBFBD><EFBFBD><EFBFBD> ⠩<><E2A0A9><EFBFBD><EFBFBD>
|
||||
|
||||
asm{
|
||||
mov ax,00000110B // 00 00 011 0
|
||||
out 43h,ax // <EFBFBD><EFBFBD>⠥<EFBFBD> <20><><EFBFBD><EFBFBD>訩, <20><>⮬ <20><><EFBFBD><EFBFBD>訩
|
||||
in al,40h
|
||||
// mov bl,al
|
||||
in al,40h
|
||||
// mov ah,al
|
||||
// mov al,bl
|
||||
}
|
||||
t1=_AX;
|
||||
|
||||
|
||||
//<EFBFBD><EFBFBD><EFBFBD>⮢<EFBFBD><EFBFBD> <20>ணࠬ<E0AEA3><E0A0AC> 2
|
||||
asm mov cx,1
|
||||
met11: asm {
|
||||
push cx
|
||||
mov cx,1000
|
||||
}
|
||||
met22: asm {
|
||||
loop met22
|
||||
pop cx
|
||||
loop met11
|
||||
}
|
||||
|
||||
asm{
|
||||
mov ax,00000110B // 00 00 011 0
|
||||
out 43h,ax // <EFBFBD><EFBFBD>⠥<EFBFBD> <20><><EFBFBD><EFBFBD>訩, <20><>⮬ <20><><EFBFBD><EFBFBD>訩
|
||||
in al,40h
|
||||
// mov bl,al
|
||||
in al,40h
|
||||
// mov ah,al
|
||||
// mov al,bl
|
||||
}
|
||||
t2=_AX;
|
||||
t3=t1; // ????
|
||||
|
||||
clrscr();
|
||||
printf("\n<EFBFBD><EFBFBD>ࢮ<EFBFBD> - %d \n",t1);
|
||||
printf("<EFBFBD><EFBFBD><EFBFBD> - %d\n",t2);
|
||||
cout<<"\n<EFBFBD>६<EFBFBD> <20>믮<EFBFBD><EBAFAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>⮢<EFBFBD><E2AEA2> <20>ணࠬ<E0AEA3><E0A0AC> 2\n";
|
||||
printf("%x\n",t3);
|
||||
cout<<"CLOCKs: "<<t3<<"\n";
|
||||
printf("\n <EFBFBD><EFBFBD><EFBFBD><EFBFBD>쪮 <20><><EFBFBD><EFBFBD><EFBFBD>ᥪ㭤 ??");
|
||||
getch();
|
||||
|
||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// 1 <EFBFBD><EFBFBD>।<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>६<EFBFBD><E0A5AC><EFBFBD> ࠡ<><E0A0A1><EFBFBD> <20><><EFBFBD>⮢<EFBFBD><E2AEA2> <20>ணࠬ<E0AEA3> 1 <EFBFBD> 2
|
||||
// 2 <EFBFBD><EFBFBD>९ணࠬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ⠩<><E2A0A9><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>६<EFBFBD> ࠡ <20>ண1 <20><><EFBFBD><EFBFBD><EFBFBD> <20><>筮
|
||||
// 3 <EFBFBD><EFBFBD>।<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>६<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ﬨ <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> (<28><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
||||
|
||||
//<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>楤<EFBFBD><E6A5A4><EFBFBD> <20><><EFBFBD><EFBFBD>뢠<EFBFBD><EBA2A0> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20> <20>ਧ<EFBFBD><E0A8A7><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
//<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <20><><EFBFBD><EFBFBD><EFBFBD>⠩<EFBFBD><E2A0A9> <20><><EFBFBD>ᠭ<EFBFBD><E1A0AD> <20>ࠩ<EFBFBD><E0A0A9><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20> <20>ணࠬ<E0AEA3><E0A0AC> Asmous.cpp.
|
||||
|
||||
void ReadMouse ()
|
||||
{
|
||||
asm mov ax, 0x3
|
||||
asm int 0x33
|
||||
asm mov MouseB, bx
|
||||
asm mov MouseX, cx
|
||||
asm mov MouseY, dx
|
||||
}
|
||||
|
||||
|
||||
// Лабораторная Работа Lab 4
|
||||
// ТАЙМЕР. Измерение времени. Мышь
|
||||
//
|
||||
|
||||
|
||||
#include<iostream.h>
|
||||
#include<conio.h>
|
||||
#include<stdio.h>
|
||||
|
||||
void main()
|
||||
{
|
||||
long int cl2,cl1,c1,c2;
|
||||
unsigned long int t1,t2,t3;
|
||||
|
||||
// Изменение константы счетчика
|
||||
/* asm{
|
||||
mov ax,00110110B // 00 11 011 0
|
||||
out 43h,ax
|
||||
mov ax,0000000000000000B
|
||||
out 40h,al
|
||||
mov al,ah
|
||||
out 40h,al
|
||||
}
|
||||
*/
|
||||
|
||||
// Измерение времени выполнения тестовой программы 1
|
||||
// в тиках (в прерываниях от 0-го канала таймера)
|
||||
// Счетчик тиков ячейка 46С - младший байт первый
|
||||
asm{
|
||||
mov ax,0x46
|
||||
mov es,ax
|
||||
mov bx,0xC
|
||||
mov ax,[es:bx]
|
||||
mov cx,[es:(bx+2)]
|
||||
}
|
||||
// Запомните начальное значение младшее и старшее ???
|
||||
// cl2= ; cl1= ;
|
||||
c1=cl2+cl1*0x10000;
|
||||
|
||||
//Тестовая программа 1
|
||||
asm mov cx,1000
|
||||
met1: asm {
|
||||
push cx
|
||||
mov cx,1000
|
||||
}
|
||||
met2: asm {
|
||||
loop met2
|
||||
pop cx
|
||||
loop met1
|
||||
}
|
||||
|
||||
//
|
||||
asm{
|
||||
mov ax,0x46
|
||||
mov es,ax
|
||||
mov bx,0xC
|
||||
mov ax,[es:bx]
|
||||
mov cx,[es:(bx+2)]
|
||||
}
|
||||
// Запомните конечное значение ???
|
||||
// cl2=_AX; cl1= ;
|
||||
// Длинное целое -
|
||||
c2=cl2+cl1*0x10000;
|
||||
|
||||
// clrscr();
|
||||
// printf("\nПервое - %d\n",c1);
|
||||
// printf("Второе - %d\n",c2);
|
||||
cout<<"\nВремя выполнения тестовой программы 1\n";
|
||||
cout<<"COUNTs: "<<c2-c1<<"\n";
|
||||
printf("\n Сколько миллисекунд ??");
|
||||
getch();
|
||||
|
||||
// Измерение времени выполнения тестовой программы
|
||||
// по содержимому регистра таймера
|
||||
// Порт 43h - порт управления таймером
|
||||
// Порт 40h - порт таймера
|
||||
|
||||
asm{
|
||||
mov ax,00000110B // 00 00 011 0
|
||||
out 43h,ax // Читаем младший, потом старший
|
||||
in al,40h
|
||||
// mov bl,al
|
||||
in al,40h
|
||||
// mov ah,al
|
||||
// mov al,bl
|
||||
}
|
||||
t1=_AX;
|
||||
|
||||
|
||||
//Тестовая программа 2
|
||||
asm mov cx,1
|
||||
met11: asm {
|
||||
push cx
|
||||
mov cx,1000
|
||||
}
|
||||
met22: asm {
|
||||
loop met22
|
||||
pop cx
|
||||
loop met11
|
||||
}
|
||||
|
||||
asm{
|
||||
mov ax,00000110B // 00 00 011 0
|
||||
out 43h,ax // Читаем младший, потом старший
|
||||
in al,40h
|
||||
// mov bl,al
|
||||
in al,40h
|
||||
// mov ah,al
|
||||
// mov al,bl
|
||||
}
|
||||
t2=_AX;
|
||||
t3=t1; // ????
|
||||
|
||||
clrscr();
|
||||
printf("\nПервое - %d \n",t1);
|
||||
printf("Второе - %d\n",t2);
|
||||
cout<<"\nВремя выполнения тестовой программы 2\n";
|
||||
printf("%x\n",t3);
|
||||
cout<<"CLOCKs: "<<t3<<"\n";
|
||||
printf("\n Сколько микросекунд ??");
|
||||
getch();
|
||||
|
||||
// Задания
|
||||
// 1 Определите времена работы тестовых программ 1 и 2
|
||||
// 2 Перепрограммируйте таймер и измерьте время раб прог1 более точно
|
||||
// 3 Определите время между двумя нажатиями на кнопку мыши (или клавиатуры)
|
||||
|
||||
//Эта процедура считывает положение курсора мыши и признак нажатия
|
||||
//на клавишу. Прочитайте описание драйвера мыши и программу Asmous.cpp.
|
||||
|
||||
void ReadMouse ()
|
||||
{
|
||||
asm mov ax, 0x3
|
||||
asm int 0x33
|
||||
asm mov MouseB, bx
|
||||
asm mov MouseX, cx
|
||||
asm mov MouseY, dx
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user