Quá trình hình thành giáo trình viết từ ngôn ngữ gợi nhớ sang mã máy tại những lệnh jump và call p6
lượt xem 7
download
Tham khảo tài liệu 'quá trình hình thành giáo trình viết từ ngôn ngữ gợi nhớ sang mã máy tại những lệnh jump và call p6', khoa học xã hội, ngôn ngữ học phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Quá trình hình thành giáo trình viết từ ngôn ngữ gợi nhớ sang mã máy tại những lệnh jump và call p6
- 56 LUAÂÄN VAÊN TOÁT NGHIEÄP ;KeyKRB : Chuong trinh con quet ban phim. Ma cua phim an duoc cat ;trong thanh ; ghi A. ;DELAY : Chuong trinh con tri hoan theo thoi hang 0.1 ms. He so tri ;hoan duoc ; nap vao thanh ghi A. ;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++++++ ;##################################################################### ;Khai bao cac nhan duoc su dung. ;##################################################################### RegCNT equ 03h PortA equ 00h PortB equ 01h PortC equ 02h CntI79 equ 0A001h DataI79 equ 0A000h KEYBRD equ 0216h DELAY equ 0310h KeyGO equ 17h ;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ End
- 57 LUAÂÄN VAÊN TOÁT NGHIEÄP B.Module Demo.cpp #include #include #include #include #include #include #include #include #include #include #include #include "screen.h" #include "mouse.h" #include "button.hpp" #include "textbox.hpp" #include "list.hpp" #include "disklist.hpp" #include "send.hpp" #define NumBox 2 #define NumBut 2 LPEVENT lpEvent; //bien chua cac bien co chuot char szMessage[128]; BUTTON But[NumBut],NutKiem; TEXTBOX Box[NumBox],Port; char DiskName[27],DName; char ftype[15]="*.prn"; char inter_Path[100]=""; char RequF[100]; unsigned int St_address,End_address=0; char Sta_hex[5],End_hex[5]; //--------------------------------------------------------- int TestPressedButton(int x,LPEVENT lpEvent); int TestPressTexbox(int x,LPEVENT lpEvent,char layra[],unsigned *attribp); void MainProgram(); int TestPressList(LIST L,LPEVENT lpEvent,char s[],unsigned *attrib,char *typ);//nhap bang liet ke int SendFile(); //--------------------------------------------------------- void main(void) { InitGraphics(); InitValues("Download Program."); InitScreen(); if (!InitMouse(&MainWindow.rViewPort)) { OutMessage("Mouse driver not found. Init mouse and return"); getch(); closegraph(); exit(1); } ShowMouse(); MainProgram(); closegraph(); }
- 58 LUAÂÄN VAÊN TOÁT NGHIEÄP //--------------------------------------------------------- void MainProgram() { char Name[20],buffer[MAXPATH]; unsigned attrib,Attribp; SEND Send; LIST L; But[0].InitButton(200,380,250,400,LIGHTGRAY,"Send"); But[1].InitButton(400,380,450,400,LIGHTGRAY,"Exit"); Box[0].InitTextBox(50,70,477,90,GREEN,LIGHTGREEN,"Open File"); Port.InitTextBox(50,270,250,290,GREEN,LIGHTGREEN,"Out port"); Port.GetS_in("LPT1"); L.InitList(480,70,500,90,LIGHTGRAY); But[0].OutButton();//xuat nut lenh But[1].OutButton();//xuat nut lenh Box[0].OutTextBox();//xuat hop nhap text Port.OutTextBox(); L.Show(); setcolor(BLACK); line(50,150,250,150); line(50,150,50,215); setcolor(WHITE); line(50,215,250,215); line(250,150,250,215); outtextxy(50,130,"Free memory request"); outtextxy(55,158,"Start ad :"); outtextxy(55,178,"End ad :"); outtextxy(55,198,"Total :"); OutMessage("Click mouse to chose action"); int kkkk; char RequestFile[15]=""; do//kiem tra nhap chuot chon cong viec { ShowMouse(); lpEvent = GetEvent();//lay bien co chuot if(TestPressedButton(2,lpEvent)==0)//kiem tra xem da click vao nut nao //0:nhan OK { char InName[100],OutName[100]; Box[0].GetS(InName); if(InName[strlen(InName)-1]=='\\') InName[strlen(InName)-1]='\0'; _dos_getfileattr(InName,&attrib); if(attrib==16) { OutMessage(""); OutError("Please enter a file name"); OutMessage("Click mouse to chose action"); } else//la file { if(End_address!=0) { if(OutError("Are you sure ?")) { OutMessage("Sending... Press Esc to stop if time is over."); Send.CatFile(Sta_hex,End_hex,inter_Path);
- 59 LUAÂÄN VAÊN TOÁT NGHIEÄP Send.Out(); HideMouse(); if(Send.Out()!=-1) { HideMouse(); OutMessage(""); OutError("Task is complete."); OutMessage("Click mouse to choose action"); } else { HideMouse(); OutMessage("Click mouse to choose action"); } } } } }//if(TestPressedButton if(TestPressList(L,lpEvent,Name,&attrib,ftype)==1) //chon OK { switch (attrib) { case 16:chdir(Name); getcwd(buffer, MAXPATH);//lay duong dan hien thoi vao buffer strcpy(inter_Path,buffer); Box[0].GetS_in(inter_Path); Box[0].OutTextBox(); break; default: getcwd(buffer, MAXPATH);//lay duong dan hien thoi vao buffer strcpy(inter_Path,buffer); if(inter_Path[strlen(inter_Path)-1]!='\\') strcat(inter_Path,"\\"); strcat(inter_Path,Name); Box[0].GetS_in(inter_Path); Box[0].DuongDan(inter_Path); Box[0].OutTextBox(); break; }//end switch }//if(TestPressList( //chon Cancel TestPressTexbox(NumBox,lpEvent,inter_Path,&Attribp);//Path lay ra duong dan cho file nhap vao //ShowMouse(); if(kbhit()) { kkkk=getch(); if(kkkk==0)kkkk=getch(); } Box[0].GetS(RequF); { int n=strlen(RequF); if(n>5)//?.??? if(RequF[n-1]!='\\') { while(n>0&&RequF[n-1]!='\\') { n--; } char *strtemp=RequF;
- 60 LUAÂÄN VAÊN TOÁT NGHIEÄP for(int m=0;m
- 61 LUAÂÄN VAÊN TOÁT NGHIEÄP do { fread(&c,1,1,f); end = clock(); }while(c!='m'&&c!='M'&&(period=(end - start) / CLK_TCK)=10) goto Error; fseek(f,-1,SEEK_CUR); fread(buf,7,1,f); buf[7]='\0'; end = clock(); if(!strcmp(buf,"Macros:")||!strcmp(buf,"MACROS:")||!strcmp(buf," macros:")) thoat=0; }while(thoat&&(period=(end - start) / CLK_TCK)=15) goto Error; fseek(f,-1,SEEK_CUR); start = clock(); do { dem=0; do { fread(&c,1,1,f); if(c=='\n') fseek(f,-3,SEEK_CUR); else fseek(f,-2,SEEK_CUR); end = clock(); }while(c!='\''&&(period=(end - start) / CLK_TCK)=10) goto Error; do { dem++; fread(&c,1,1,f); if(c=='\n') dem=20; fseek(f,-2,SEEK_CUR); end = clock(); }while(dem
- 62 LUAÂÄN VAÊN TOÁT NGHIEÄP for(FindValue=0;FindValueMsg==1) { for(int i=0;i=lpEvent->Posx&&But[i].Bottom()>=lpEvent->Posy) { HideMouse(); But[i].PressButton(); delay(100); But[i].OutButton(); if(i==1) { if(OutError("Do you want to quit ?")==0) return -1; closegraph(); exit(1); } ShowMouse();
- 63 LUAÂÄN VAÊN TOÁT NGHIEÄP return i; } } return -1; } //--------------------------------------------------------- int TestPressTexbox(int x,LPEVENT lpEvent,char layra[],unsigned *attribp) { *attribp=0; if(lpEvent->Msg==1) { for(int i=0;i=lpEvent->Posx&&Box[i].Bottom()>=lpEvent->Posy) { HideMouse();//giau chuot de khong bi vet lem mau o vi tri chuot char LastName[100]; Box[i].GetS(LastName); OutMessage("Enter a file name. Press Enter to finish, Esc to ignore."); Box[i].Path();//lay Path vao bien S cua TEXTBOX Box[i].OutTextBox(); Box[i].GetS(layra);//lay ra text da nhap vao //tao chuan cho chuoi Path if(layra[strlen(layra)-1]=='>')//gat bo dau \> sau thu muc nhung van giu lai doi voi o dia if(layra[strlen(layra)-2]=='\\') if(layra[strlen(layra)-3]==':')//dang a:\> layra[strlen(layra)-1]='\0';//ra a:\ else //dang a:\fname\> layra[strlen(layra)-2]='\0';//ra dang a:\fname else layra[strlen(layra)-1]='\0';//bo dau > if(layra[strlen(layra)-1]=='\\')//gat bo dau \ sau thu muc nhung van giu lai doi voi o dia if(layra[strlen(layra)-2]!=':')//dang a:\fname\ layra[strlen(layra)-1]='\0'; if(layra[strlen(layra)-1]==':') if(strlen(layra)==2)//dang a: strcat(layra,"\\");//ra a:\ int NotExist=_dos_getfileattr(layra, attribp); int m=strlen(layra)-1; while(layra[m]!='\\')//dem so ky tu thuoc ve phan Path m--; for(int n=0;n='a'&&layra[n]
- 64 LUAÂÄN VAÊN TOÁT NGHIEÄP if(layra[1]==':'&&layra[0]!=LastName[0]) setdisk(toupper(layra[0])-'A'); chdir(layra);//vao them mot cap thu muc if(layra[strlen(layra)-1]!='\\') strcat(layra,"\\"); Box[0].GetS_in(layra); Box[0].OutTextBox(); OutMessage("Click mouse to chose action"); return 0; } if (NotExist == 0) { return 0; } else { OutMessage("File does not exist."); Box[0].GetS_in(LastName); Box[0].OutTextBox(); return 1; } }//end if Open } } return -1; } //--------------------------------------------------------- int TestPressList(LIST L,LPEVENT lpEvent,char s[],unsigned *attrib,char *typ) { int k=0; if(lpEvent->Msg==1) if(L.Left()Posx&&L.Top()Posy&&L.Right()>=lpEvent->Posx&&L.Bottom()>=lpEvent->Posy) { OutMessage("Open File Name"); delay(100);//neu khong thi khong the putimage, khong thoat khoi bang list duoc k=L.Press(s,&Box[0],attrib,DiskName,&DName,typ); } return k; } //--------------------------------------------------------- II.CLASS BUTTON.HPP #if !defined __BUTTON__ #define __BUTTON__ class BUTTON { private: int l,t,r,b;//toa do box int Color; char S[100]; public: void InitButton(int x1,int y1,int x2,int y2,int color,char s[]); void OutButton(); void PressButton(); int Left() {return l;} int Right() {return r;} int Top() {return t;} int Bottom() {return b;} }; #endif
- 65 LUAÂÄN VAÊN TOÁT NGHIEÄP III.MODULE BUTTON.CPP #include #include #include "button.hpp" //--------------------------------------------------------- void BUTTON::InitButton(int x1,int y1,int x2,int y2,int color,char s[]) { l=x1; t=y1; r=x2; b=y2; Color=color; strcpy(S,s); } //--------------------------------------------------------- void BUTTON::OutButton() { setfillstyle(SOLID_FILL,Color); bar(l,t,r,b); setcolor(WHITE); line(l,t,r,t); line(l,t,l,b); setcolor(BLACK); line(r,t,r,b); line(l,b,r,b); setcolor(BLUE); int x=l+(r-l-textwidth(S))/2,y=t+(b-t-textheight(S))/2; outtextxy(x,y,S); } //--------------------------------------------------------- void BUTTON::PressButton() { setcolor(BLACK); line(l,t,r,t); line(l,t,l,b); setcolor(WHITE); line(r,t,r,b); line(l,b,r,b); } //--------------------------------------------------------- IV. CLASS DISKLIST.HPP #include "textbox.hpp" #include "mouse.h" #if !defined __DISKLIST__ #define __DISLIST__ extern char Disk(char *s); extern int ChosenDisk(char *s,/*TEXTBOX *Box,*/char PreDisk,char CurDisk); extern LPEVENT CheckChooseDisk(char *DiskName,char *DName,LPEVENT lpEvent,int x,int y); extern char *FileType(TEXTBOX *b); #endif V.MODULE DISKLIST.CPP #include #include #include #include #include #include
- 66 LUAÂÄN VAÊN TOÁT NGHIEÄP #include #include // #include "disklist.hpp" char Disk(char *s)//kiem tra co bao nhieu o dia trong may, luu ten cac o dia vao chuoi s, tra ve ten o dia hien hanh { int save,disk, disks; int equip_check; char c[4]; s[0]='\0'; save = getdisk(); equip_check = biosequip(); equip_check >>= 6; equip_check = (equip_check & 3) + 1;//dem so o dia mem for (disk = 0;disk < 26;++disk) { setdisk(disk); if (disk == getdisk()) { sprintf(c,"%c",disk +'A'); strcat(s,c); } } setdisk(save); if(equip_check==1&&s[1]=='B')//neu chi co ot o dia mem for(int i=1;i
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng môn Tư tưởng - CƠ SỞ, QUÁ TRÌNH HÌNH THÀNH VÀ PHÁT TRIỂN TƯ TƯỞNG HỒ CHÍ MINH (Phần 2)
5 p | 2348 | 809
-
Quá trình hình thành tư tưởng Hồ Chí Minh
2 p | 1098 | 185
-
Bài thuyết trình: Quá trình hình thành, giáo lý cơ bản, sự truyền bá cũng như ảnh hưởng của đạo Hồi đến đời sống kinh tế xã hội
17 p | 385 | 30
-
Bài thuyết trình: Quá trình hình thành, giáo lý cơ bản, sự truyền bá cũng như hưởng của đạo hồi đến đời sống kinh tế xã hội
13 p | 259 | 22
-
Tìm hiểu quá trình hình thành và phát triển của Triết học tôn giáo Ấn Độ cổ đại
10 p | 156 | 12
-
Giáo dục thói quen văn hóa vệ sinh cho trẻ mẫu giáo – Một biện pháp nâng cao chất lượng giáo dục mầm non
5 p | 375 | 11
-
Quá trình hình thành giáo trình viết từ ngôn ngữ gợi nhớ sang mã máy tại những lệnh jump và call p4
10 p | 89 | 11
-
Quá trình hình thành giáo trình viết từ ngôn ngữ gợi nhớ sang mã máy tại những lệnh jump và call p1
8 p | 83 | 7
-
Quá trình hình thành giáo trình viết từ ngôn ngữ gợi nhớ sang mã máy tại những lệnh jump và call p2
11 p | 66 | 7
-
Quá trình hình thành giáo trình viết từ ngôn ngữ gợi nhớ sang mã máy tại những lệnh jump và call p7
11 p | 64 | 6
-
Quá trình hình thành giáo trình viết từ ngôn ngữ gợi nhớ sang mã máy tại những lệnh jump và call p3
11 p | 52 | 6
-
quá trình hình thành quy trình tất yếu cung cầu trong lao động p3
6 p | 85 | 6
-
Phương pháp giao tiếp và dạy tiếng Việt theo phương pháp giao tiếp
9 p | 67 | 5
-
quá trình hình thành quy trình tất yếu cung cầu trong lao động p5
5 p | 51 | 4
-
Quá trình hình thành và phát triển của Giáo đoàn Ni thuộc Hệ phái Khất sĩ tại thành phố Hồ Chí Minh
12 p | 60 | 3
-
Quá trình hình thành và hoạt động của Hội Thiên Thai thiền Giáo tông Liên hữu
27 p | 11 | 1
-
Triết học tôn giáo hay triết học về tôn giáo
6 p | 4 | 1
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn