LAMPIRAN. uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Menus, XPMan, ExtCtrls, jpeg;

Size: px
Start display at page:

Download "LAMPIRAN. uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Menus, XPMan, ExtCtrls, jpeg;"

Transcription

1 LAMPIRAN Lampiran A. Listing Program 1. Unit Utama unit UnUtama; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Menus, XPMan, ExtCtrls, jpeg; type Tfrmutama = class(tform) XPManifest1: TXPManifest; Panel1: TPanel; imgfile: TImage; imgbantuan: TImage; imgkajian: TImage; pfile: TPanel; imgenkrip: TImage; imgdekrip: TImage; pkajian: TPanel; imgstep: TImage; imgjadwal: TImage; imgsboxkey: TImage; imgsbox: TImage; imgmds: TImage; imgae: TImage; pbantuan: TPanel; imgtentang: TImage; imgtwofishkomponen: TImage; imgbantuan2: TImage; imgexit: TImage; XPManifest2: TXPManifest; XPManifest3: TXPManifest; imglogo: TImage; procedure FormClose(Sender: TObject; Action: TCloseAction); procedure imgfileclick(sender: TObject); procedure imgkajianclick(sender: TObject); procedure imgbantuanclick(sender: TObject); procedure FormShow(Sender: TObject); procedure imgexitclick(sender: TObject); procedure imgbantuan2click(sender: TObject); procedure imgtentangclick(sender: TObject); procedure imgstepclick(sender: TObject); procedure imgjadwalclick(sender: TObject); procedure imgsboxkeyclick(sender: TObject); procedure imgsboxclick(sender: TObject); procedure imgmdsclick(sender: TObject); procedure imgaeclick(sender: TObject); procedure imgenkripclick(sender: TObject); procedure imgdekripclick(sender: TObject); procedure imgtwofishkomponenclick(sender: TObject); private { Private declarations } procedure file2; procedure kajian2; procedure Keluar1Click(Sender: TObject);

2 procedure bantuan2; procedure awalan; public modee : boolean; { Public declarations } frmutama: Tfrmutama; implementation uses UNPL, unae, unkomponen, Unstep, Unbantu1, Unfile, Unkotakkunci, Unmds, Unsbox, unjadwalkunci; {$R *.dfm} procedure Tfrmutama.awalan; imgexit.top := 160; imglogo.top := 160; panel1.height := 273; frmutama.height := 297; procedure Tfrmutama.file2; pfile.visible := true; pkajian.visible := false; pbantuan.visible := false; imgexit.top := 304; panel1.height := 409; frmutama.height := 433; imglogo.top := 304; procedure Tfrmutama.kajian2; pfile.visible := false; pkajian.visible := true; pbantuan.visible := false; imgexit.top := 416; panel1.height := 510; frmutama.height := 534; imglogo.top := 416; procedure Tfrmutama.bantuan2; pfile.visible := false; pkajian.visible := false; pbantuan.visible := true; imgexit.top := 304; panel1.height := 409; frmutama.height := 433; imglogo.top := 304; procedure Tfrmutama.Keluar1Click(Sender: TObject); if (application.messagebox('anda yakin ingin keluar dari aplikasi ini?','konfirmasi',mb_iconquestion or mb_yesno) = idyes ) then application.messagebox('terima Kasih telah menggunakan Aplikasi Twofish' + #13 + 'Sampai Jumpa','Informasi',mb_iconinformation);

3 application.terminate; procedure Tfrmutama.FormClose(Sender: TObject; Action: TCloseAction); application.messagebox('terima Kasih telah menggunakan Aplikasi Twofish' + #13 + 'Sampai Jumpa','Informasi',mb_iconinformation); application.terminate; procedure Tfrmutama.imgfileClick(Sender: TObject); file2; procedure Tfrmutama.imgkajianClick(Sender: TObject); kajian2; procedure Tfrmutama.imgbantuanClick(Sender: TObject); bantuan2; procedure Tfrmutama.FormShow(Sender: TObject); file2; pfile.visible := false; awalan; procedure Tfrmutama.imgexitClick(Sender: TObject); if (application.messagebox('anda yakin ingin keluar dari aplikasi ini?','konfirmasi',mb_iconquestion or mb_yesno) = idyes ) then application.messagebox('terima Kasih telah menggunakan Aplikasi Twofish' + #13 + 'Sampai Jumpa','Informasi',mb_iconinformation); application.terminate; procedure Tfrmutama.imgbantuan2Click(Sender: TObject); frmbantu1.showmodal; procedure Tfrmutama.imgtentangClick(Sender: TObject); frmtentangpl.showmodal; procedure Tfrmutama.imgstepClick(Sender: TObject);

4 frmstep.showmodal; procedure Tfrmutama.imgjadwalClick(Sender: TObject); frmjadwalkunci.showmodal; procedure Tfrmutama.imgsboxkeyClick(Sender: TObject); frmkotakkunci.showmodal; procedure Tfrmutama.imgsboxClick(Sender: TObject); frmsbox.showmodal; procedure Tfrmutama.imgmdsClick(Sender: TObject); frmmds.showmodal; procedure Tfrmutama.imgaeClick(Sender: TObject); frmae.showmodal; procedure Tfrmutama.imgenkripClick(Sender: TObject); modee := false; frmfile.showmodal; procedure Tfrmutama.imgdekripClick(Sender: TObject); modee := true; frmfile.showmodal; procedure Tfrmutama.imgtwofishkomponenClick(Sender: TObject); frmkomponen.showmodal; end.

5 2. Unit File (Enkripsi-Dekripsi) unit UnFile; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, twofish, Buttons, ExtCtrls, shellapi,shlobj, jpeg; type Tfrmfile = class(tform) lblenkrip: TLabel; Label2: TLabel; OpenFile: TOpenDialog; Label3: TLabel; ednama: TEdit; lblukuran: TLabel; Label4: TLabel; edk: TEdit; btnproses: TBitBtn; btncari: TBitBtn; Imageicon: TImage; btndekripsi: TBitBtn; lbldekrip: TLabel; Image1: TImage; BitBtn1: TBitBtn; Memo1: TMemo; procedure btncariclick(sender: TObject); procedure btnprosesclick(sender: TObject); procedure btndekripsiclick(sender: TObject); procedure FormShow(Sender: TObject); procedure BitBtn1Click(Sender: TObject); private procedure modedekripsi; procedure modeenkripsi; { Private declarations } public ukuranfile, Freq, StartCount, StopCount : int64; timingseconds : real; namafile : string; namahasil : string; kodeproses : byte; function besarfile(s : string) : int64; { Public declarations } function GetCPUSpeed : Double; frmfile: Tfrmfile; data : ttwofishdata; Block : array[0..15] of byte; Blockiw : array[0..15] of byte; Blockro1 : array[0..15] of byte; Blockro2 : array[0..15] of byte; Blockro3 : array[0..15] of byte; Blockro4 : array[0..15] of byte; Blockro5 : array[0..15] of byte; Blockro6 : array[0..15] of byte; Blockro7 : array[0..15] of byte; Blockro8 : array[0..15] of byte; key : array[0..31]of byte; C, K, P : string; len : integer; implementation uses unutama; {$R *.dfm}

6 function GetCPUSpeed: Double; const DelayTime = 500; TimerHi, TimerLo : DWORD; PriorityClass, Priority : Integer; PriorityClass := GetPriorityClass(GetCurrentProcess); Priority := GetThreadPriority(GetCurrentThread); SetPriorityClass(GetCurrentProcess, REALTIME_PRIORITY_CLASS); SetThreadPriority(GetCurrentThread, THREAD_PRIORITY_TIME_CRITICAL); Sleep(10); asm dw 310Fh mov TimerLo, eax mov TimerHi, edx Sleep(DelayTime); asm dw 310Fh sub eax, TimerLo sub edx, TimerHi mov TimerLo, eax mov TimerHi, edx SetThreadPriority(GetCurrentThread, Priority); SetPriorityClass(GetCurrentProcess, PriorityClass); Result :=TimerLo/ ( * DelayTime); procedure tfrmfile.modedekripsi; btnproses.visible := false; lblenkrip.visible := false; memo1.lines.clear; btndekripsi.visible := true; lbldekrip.visible := true; procedure tfrmfile.modeenkripsi; btnproses.visible :=true ; btndekripsi.visible := false; lblenkrip.visible := true; lbldekrip.visible := false; memo1.lines.clear; function tfrmfile.besarfile(s:string):int64; berkas:hfile; ukuran:int64; berkas:=createfile(pchar(s),generic_read,0,nil,open_always,

7 FILE_ATTRIBUTE_NORMAL,0); //jika berkas gagal dibuka maka error if berkas=invalid_handle_value then result:=-1; exit; //ambil informasi ttng ukuran file ukuran:=getfilesize(berkas,nil); closehandle(berkas); result:=ukuran; procedure Tfrmfile.btncariClick(Sender: TObject); info:tshfileinfo; ukuran:int64; if openfile.execute then //ambil besar ukuran file ukuran:= besarfile(openfile.filename); //jika ukuran file gagal diambil if ukuran=-1 then MessageBox(handle,'file gagal dibuka','error',mb_ok); exit; //isi label ukuran ukuranfile:=ukuran; lblukuran.caption :='Ukuran File :'+inttostr(ukuran)+' byte'; //isi label nama namafile:=openfile.filename; ednama.text :='Nama File : '+ namafile; //isi imageicon dengan icon file SHGetFileInfo(PChar(openFile.fileName),1,info,sizeof(info),SHGFI_ICO N); imageicon.picture.icon.handle:=info.hicon; procedure Tfrmfile.btnprosesClick(Sender: TObject); sumber, hasil : file; datachiper : array[0..15] of byte; i, len, atr, tertulis, terbaca : integer; MyStatus: TMemoryStatus; if (ednama.text = '') or (edk.text = '') then application.messagebox('data File atau Kunci tidak boleh kosong', 'Pesan Kesalahan',mb_iconerror)

8 else K:= ''; C:= ''; K := edk.text; Len := length(k); for i:= 0 to (len-1) do key[i]:= Ord(K[i+1]); // inisialisasi kunci namahasil:=namafile+'.tfm'; kodeproses:=1; assignfile(sumber,namafile); assignfile(hasil,namahasil); filemode := 0; reset(sumber,1); rewrite(hasil,1); QueryPerformanceFrequency(Freq); QueryPerformanceCounter(StartCount); Twofishinit(Data,@key,sizeof(key),nil); repeat FillChar(dataChiper,Sizeof(Block),0); FillChar(Block,Sizeof(Block),0); blockread(sumber,datachiper,sizeof(datachiper),terbaca); TwofishEncryptECB(Data,@dataChiper,@Block,@Blockiw,@Blockro1,@Blockr o2,@blockro3,@blockro4,@blockro5,@blockro6,@blockro7,@blockro8); blockwrite(hasil,block,terbaca,tertulis); until(eof(sumber))or(terbaca = 0) or (tertulis <> terbaca); QueryPerformanceCounter(StopCount); TimingSeconds := (StopCount - StartCount) / Freq; MyStatus.dwLength:=SizeOf(MyStatus); GlobalmemoryStatus(MyStatus); Memo1.Lines.Add('Selesai Enkripsi File dengan waktu proses : '+floattostr(timingseconds)+' detik') ; Memo1.Lines.Add('Dengan Kecepatan Prosessor : ' + Format('%f Mhz', [GetCPUSpeed])); with Memo1.Lines do Add(FloatToStr( MyStatus.dwMemoryLoad)+'% memory ram yang sedang digunakan'); Add('Jumlah physical memory = '+FloatToStr( MyStatus.dwTotalPhys/1024)+' Kb'); Add('Jumlah available physical memory = '+FloatToStr( MyStatus.dwAvailPhys/1024)+ ' Kb '); closefile(sumber); closefile(hasil);

9 //hapus file sumber atr:=getfileattributes(pchar(namafile)); if atr and FILE_ATTRIBUTE_READONLY = FILE_ATTRIBUTE_READONLY then setfileattributes(pchar(namafile),atr - FILE_ATTRIBUTE_READONLY); deletefile(namafile); TwofishBurn(data); FillChar(dataChiper,Sizeof(Block),0); FillChar(Block,Sizeof(Block),0); FillChar(key,Sizeof(Block),0); application.messagebox('file telah sukses dienkripsi','informasi',mb_iconinformation); ednama.text := ''; lblukuran.caption := ''; edk.text := ''; procedure Tfrmfile.btndekripsiClick(Sender: TObject); sumber, hasil : file; datachiper : array[0..15] of byte; i, len, atr, tertulis, terbaca : integer; MyStatus: TMemoryStatus; if (ednama.text = '') or (edk.text = '') then application.messagebox('data File atau Kunci tidak boleh kosong', 'Pesan Kesalahan',mb_iconerror) else K:= ''; C:= ''; K := edk.text; Len := length(k); for i:= 0 to (len-1) do key[i]:= Ord(K[i+1]); // inisialisasi kunci namahasil:=copy(namafile,1,length(namafile)-4); kodeproses:=1; assignfile(sumber,namafile); assignfile(hasil,namahasil); filemode := 0; reset(sumber,1); rewrite(hasil,1); QueryPerformanceFrequency(Freq); QueryPerformanceCounter(StartCount); Twofishinit(Data,@key,sizeof(key),nil); repeat FillChar(dataChiper,Sizeof(Block),0); FillChar(Block,Sizeof(Block),0); blockread(sumber,datachiper,sizeof(datachiper),terbaca); TwofishdecryptECB(data,@dataChiper,@Block); blockwrite(hasil,block,terbaca,tertulis);

10 until(eof(sumber)) or(terbaca = 0) or (tertulis <> terbaca); QueryPerformanceCounter(StopCount); TimingSeconds := (StopCount - StartCount) / Freq; MyStatus.dwLength:=SizeOf(MyStatus); GlobalmemoryStatus(MyStatus); Memo1.Lines.Add('Selesai Enkripsi File dengan waktu proses : '+floattostr(timingseconds)+' detik') ; Memo1.Lines.Add('Dengan Kecepatan Prosessor : ' + Format('%f Mhz', [GetCPUSpeed])); closefile(sumber); closefile(hasil); //hapus file sumber atr:=getfileattributes(pchar(namafile)); if atr and FILE_ATTRIBUTE_READONLY = FILE_ATTRIBUTE_READONLY then setfileattributes(pchar(namafile),atr - FILE_ATTRIBUTE_READONLY); deletefile(namafile); TwofishBurn(data); FillChar(dataChiper,Sizeof(Block),0); FillChar(Block,Sizeof(Block),0); FillChar(key,Sizeof(Block),0); application.messagebox('file telah sukses didekripsi','informasi',mb_iconinformation); ednama.text := ''; lblukuran.caption := ''; edk.text := ''; procedure Tfrmfile.FormShow(Sender: TObject); if frmutama.modee = false then modeenkripsi else modedekripsi; procedure Tfrmfile.BitBtn1Click(Sender: TObject); close; end. 3. Unit Step by Step Chiper unit UnStep; interface

11 uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, twofish, StdCtrls; type Tfrmstep = class(tform) Label4: TLabel; Label5: TLabel; edkarc: TEdit; edc: TEdit; edk: TEdit; edp: TEdit; Label7: TLabel; edkarp: TEdit; edp2: TEdit; btnkrip: TButton; btndec: TButton; Label1: TLabel; Label2: TLabel; Label3: TLabel; GroupBox1: TGroupBox; Label8: TLabel; Label9: TLabel; Label12: TLabel; Label13: TLabel; Label14: TLabel; Label15: TLabel; Label16: TLabel; Label17: TLabel; Label18: TLabel; Label19: TLabel; Label20: TLabel; Label21: TLabel; Label22: TLabel; Label23: TLabel; Label24: TLabel; Label25: TLabel; Label26: TLabel; Label27: TLabel; Label28: TLabel; Label29: TLabel; Label30: TLabel; Label31: TLabel; Label32: TLabel; Label33: TLabel; Label34: TLabel; Label35: TLabel; Label36: TLabel; edhexiw: TEdit; edasciw: TEdit; edhexro1: TEdit; edhexro2: TEdit; edhexro3: TEdit; edhexro4: TEdit; edhexro5: TEdit; edhexro6: TEdit; edhexro7: TEdit; edhexro8: TEdit; edascro1: TEdit; edascro2: TEdit; edascro3: TEdit; edascro4: TEdit; edascro5: TEdit; edascro6: TEdit; edascro7: TEdit; edascro8: TEdit; Label6: TLabel; Label37: TLabel; btnblank: TButton; btnkembali: TButton; Memo1: TMemo; procedure btnkripclick(sender: TObject); procedure btndecclick(sender: TObject); procedure btnburnclick(sender: TObject); procedure btnblankclick(sender: TObject); procedure btnkembaliclick(sender: TObject); private procedure kosongkan; { Private declarations } public ukuranfile, Freq, StartCount, StopCount : int64; timingseconds : real; { Public declarations } function GetCPUSpeed: Double; frmstep: Tfrmstep; data : ttwofishdata; Block : array[0..15] of byte; Blockiw : array[0..15] of byte; Blockro1 : array[0..15] of byte; Blockro2 : array[0..15] of byte; Blockro3 : array[0..15] of byte; Blockro4 : array[0..15] of byte; Blockro5 : array[0..15] of byte; Blockro6 : array[0..15] of byte; Blockro7 : array[0..15] of byte; Blockro8 : array[0..15] of byte; key : array[0..31]of byte; inb : array[0..15] of byte; C, K, P : string; len : integer; implementation

12 {$R *.dfm} function GetCPUSpeed: Double; const DelayTime = 500; TimerHi, TimerLo : DWORD; PriorityClass, Priority : Integer; PriorityClass := GetPriorityClass(GetCurrentProcess); Priority := GetThreadPriority(GetCurrentThread); SetPriorityClass(GetCurrentProcess, REALTIME_PRIORITY_CLASS); SetThreadPriority(GetCurrentThread, THREAD_PRIORITY_TIME_CRITICAL); Sleep(10); asm dw 310Fh mov TimerLo, eax mov TimerHi, edx Sleep(DelayTime); asm dw 310Fh sub eax, TimerLo sub edx, TimerHi mov TimerLo, eax mov TimerHi, edx SetThreadPriority(GetCurrentThread, Priority); SetPriorityClass(GetCurrentProcess, PriorityClass); Result :=TimerLo/ ( * DelayTime); procedure Tfrmstep.kosongkan; FillChar(Block,Sizeof(Block),0); FillChar(Blockiw,Sizeof(Blockiw),0); FillChar(Blockro1,Sizeof(Blockro1),0); FillChar(Blockro2,Sizeof(Blockro2),0); FillChar(Blockro3,Sizeof(Blockro3),0); FillChar(Blockro4,Sizeof(Blockro4),0); FillChar(Blockro5,Sizeof(Blockro5),0); FillChar(Blockro6,Sizeof(Blockro6),0); FillChar(Blockro7,Sizeof(Blockro7),0); FillChar(Blockro8,Sizeof(Blockro8),0); FillChar(key,Sizeof(key),0); FillChar(inB,Sizeof(inB),0); procedure Tfrmstep.btnkripClick(Sender: TObject);

13 i, len : integer; K:= ''; C:= ''; K := edk.text; Len := length(k); for i:= 0 to (len-1) do key[i]:= Ord(K[i+1]); P:= ''; P := edp.text; Len := length(p); for i:= 0 to (len-1) do inb[i] := Ord(P[i+1]); Plaintext // inisialisasi kunci // inisialisasi 16 byte blok QueryPerformanceFrequency(Freq); QueryPerformanceCounter(StartCount); Twofishinit(Data,@key,sizeof(key),nil); TwofishEncryptECB(Data,@inB,@Block,@Blockiw,@Blockro1,@Blockro2,@Blo ckro3,@blockro4,@blockro5,@blockro6,@blockro7,@blockro8); QueryPerformanceCounter(StopCount); TimingSeconds := (StopCount - StartCount) / Freq; Memo1.Lines.Clear; Memo1.Lines.Add('Selesai Enkripsi File dengan waktu proses : '+floattostr(timingseconds)+' detik') ; Memo1.Lines.Add('Dengan Kecepatan Prosessor : ' + Format('%f Mhz', [GetCPUSpeed])); //deteksi chiper whitening input C := ''; C := C + inttohex(blockiw[i],2); edhexiw.text := C; C := ''; C := C + chr(blockiw[i]); edasciw.text := C; //deteksi chiper cycle 1 C := ''; C := C + inttohex(blockro1[i],2); edhexro1.text := C; C := ''; C := C + chr(blockro1[i]); edascro1.text := C; //deteksi chiper cycle 2 C := ''; C := C + inttohex(blockro2[i],2);

14 edhexro2.text := C; C := ''; C := C + chr(blockro2[i]); edascro2.text := C; //deteksi chiper cycle 3 C := ''; C := C + inttohex(blockro3[i],2); edhexro3.text := C; C := ''; C := C + chr(blockro3[i]); edascro3.text := C; //deteksi chiper cycle 4 C := ''; C := C + inttohex(blockro4[i],2); edhexro4.text := C; C := ''; C := C + chr(blockro4[i]); edascro4.text := C; //deteksi chiper cycle 5 C := ''; C := C + inttohex(blockro5[i],2); edhexro5.text := C; C := ''; C := C + chr(blockro5[i]); edascro5.text := C; //deteksi chiper cycle 6 C := ''; C := C + inttohex(blockro6[i],2); edhexro6.text := C; C := ''; C := C + chr(blockro6[i]); edascro6.text := C; //deteksi chiper cycle 7 C := ''; C := C + inttohex(blockro7[i],2); edhexro7.text := C; C := '';

15 C := C + chr(blockro7[i]); edascro7.text := C; //deteksi chiper cycle 8 C := ''; C := C + inttohex(blockro8[i],2); edhexro8.text := C; C := ''; C := C + chr(blockro8[i]); edascro8.text := C; //chipper hasil setelah diwhitening output C := ''; C := C + inttohex(block[i],2); edc.text := C; C := ''; C := C + chr(block[i]); edkarc.text := C; TwofishBurn(data); kosongkan; procedure Tfrmstep.btndecClick(Sender: TObject); i : integer; C : string; K:= ''; C:= ''; K := edk.text; Len := length(k); for i:= 0 to (len-1) do key[i]:= Ord(K[i+1]); P:= ''; P := edkarc.text; Len := length(p); for i:= 0 to (len-1) do inb[i] := Ord(P[i+1]); Plaintext // inisialisasi kunci // inisialisasi 16 byte blok QueryPerformanceFrequency(Freq); QueryPerformanceCounter(StartCount); Twofishinit(Data,@key,sizeof(key),nil); TwofishdecryptECB(data,@inB,@Block); QueryPerformanceCounter(StopCount); TimingSeconds := (StopCount - StartCount) / Freq;

16 Memo1.Lines.Clear; Memo1.Lines.Add('Selesai Enkripsi File dengan waktu proses : '+floattostr(timingseconds)+' detik') ; Memo1.Lines.Add('Dengan Kecepatan Prosessor : ' + Format('%f Mhz', [GetCPUSpeed])); C:= ''; C := C + inttohex(block[i],2); edp2.text := C; C := ''; C := C + chr(block[i]); edkarp.text := C; kosongkan; TwofishBurn(data); procedure Tfrmstep.btnburnClick(Sender: TObject); TwofishBurn(data); procedure Tfrmstep.btnblankClick(Sender: TObject); edp.text := ''; edk.text := ''; edhexiw.text := ''; edhexro1.text := ''; edhexro5.text := ''; edhexro2.text := ''; edhexro6.text := ''; edhexro3.text := ''; edhexro7.text := ''; edhexro4.text := ''; edhexro8.text := ''; edasciw.text := ''; edascro1.text := ''; edascro5.text := ''; edascro2.text := ''; edascro6.text := ''; edascro3.text := ''; edascro7.text := ''; edascro4.text := ''; edascro8.text := ''; edp2.text := ''; edc.text := ''; edkarc.text := ''; edkarp.text := ''; kosongkan; memo1.lines.clear; procedure Tfrmstep.btnkembaliClick(Sender: TObject); btnblankclick(sender); close; end.

17 4. Unit Kunci unit Unjadwalkunci; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, twofish, ComCtrls, Buttons, XPMan; type Tfrmjadwalkunci = class(tform) Label4: TLabel; Label5: TLabel; edp: TEdit; edk: TEdit; PageControl1: TPageControl; TabSheet1: TTabSheet; TabSheet2: TTabSheet; TabSheet3: TTabSheet; TabSheet4: TTabSheet; GroupBox1: TGroupBox; Label7: TLabel; Label8: TLabel; Label9: TLabel; Label10: TLabel; Label11: TLabel; Label12: TLabel; Label13: TLabel; Label14: TLabel; edkeyiw1: TEdit; edkeyiw2: TEdit; edkeyiw0: TEdit; edkeyiw3: TEdit; GroupBox2: TGroupBox; Label15: TLabel; Label16: TLabel; Label17: TLabel; Label18: TLabel; Label19: TLabel; Label20: TLabel; Label21: TLabel; Label22: TLabel; edkeyow0: TEdit; edkeyow1: TEdit; edkeyow2: TEdit; edkeyow3: TEdit; btnkembali: TBitBtn; Label27: TLabel; Label28: TLabel; Label29: TLabel; Label30: TLabel; Label31: TLabel; Label32: TLabel; Label33: TLabel; Label34: TLabel; Label35: TLabel; Label36: TLabel; Label37: TLabel; Label38: TLabel; Label39: TLabel; Label40: TLabel; Label41: TLabel; Label42: TLabel; Label43: TLabel; edhexro8: TEdit; edhexro10: TEdit; edhexro12: TEdit; edhexro14: TEdit; edhexro16: TEdit; edhexro18: TEdit; edhexro20: TEdit; edhexro22: TEdit; edhexro24: TEdit; edhexro26: TEdit; edhexro28: TEdit; edhexro30: TEdit; edhexro32: TEdit; edhexro34: TEdit; edhexro36: TEdit; edhexro38: TEdit; Label44: TLabel; Label45: TLabel; Label46: TLabel; Label47: TLabel; Label48: TLabel; Label49: TLabel; Label50: TLabel; Label51: TLabel; Label52: TLabel; Label53: TLabel; Label54: TLabel; Label55: TLabel; Label56: TLabel; Label57: TLabel; Label58: TLabel; Label59: TLabel; btnulang: TBitBtn; edhexro9: TEdit; edhexro11: TEdit; edhexro13: TEdit; edhexro15: TEdit; edhexro17: TEdit; edhexro19: TEdit; edhexro21: TEdit; edhexro23: TEdit; edhexro25: TEdit; edhexro27: TEdit; edhexro29: TEdit; edhexro31: TEdit; edhexro33: TEdit; edhexro35: TEdit; edhexro37: TEdit; edhexro39: TEdit; btncipta: TBitBtn; btntampilkan: TBitBtn; btntampilkan2: TBitBtn; btntampilkan3: TBitBtn; btntampil4: TBitBtn; XPManifest1: TXPManifest; procedure btnkembaliclick(sender: TObject); procedure btnciptaclick(sender: TObject); procedure btntampilkanclick(sender: TObject); procedure btntampil4click(sender: TObject); procedure btnulangclick(sender: TObject); procedure btntampilkan3click(sender: TObject);

18 procedure btntampilkan2click(sender: TObject); procedure FormClose(Sender: TObject; Action: TCloseAction); private procedure kosongkan; { Private declarations } public { Public declarations } frmjadwalkunci: Tfrmjadwalkunci; data : TTwofishdata; key : array[0..31]of byte; inb : array[0..15] of byte; C, K, P : string; len : integer; tanda : boolean; implementation {$R *.dfm} procedure Tfrmjadwalkunci.kosongkan; TwofishBurn(data); FillChar(key,Sizeof(key),0); FillChar(inB,Sizeof(inB),0); tanda := false; edp.text := ''; edk.text := ''; edkeyiw0.text := ''; edkeyow0.text := ''; edkeyiw1.text := ''; edkeyow1.text := ''; edkeyiw2.text := ''; edkeyow2.text := ''; edkeyiw3.text := ''; edkeyow3.text := ''; edhexro8.text := ''; edhexro9.text := ''; edhexro10.text := ''; edhexro11.text := ''; edhexro12.text := ''; edhexro13.text := ''; edhexro14.text := ''; edhexro15.text := ''; edhexro16.text := ''; edhexro17.text := ''; edhexro18.text := ''; edhexro19.text := ''; edhexro20.text := ''; edhexro21.text := ''; edhexro22.text := ''; edhexro23.text := ''; edhexro24.text := ''; edhexro25.text := ''; edhexro26.text := ''; edhexro27.text := ''; edhexro28.text := ''; edhexro29.text := ''; edhexro30.text := ''; edhexro31.text := ''; edhexro32.text := ''; edhexro33.text := ''; edhexro34.text := ''; edhexro35.text := ''; edhexro36.text := ''; edhexro37.text := ''; edhexro38.text := ''; edhexro39.text := ''; procedure Tfrmjadwalkunci.btnkembaliClick(Sender: TObject); kosongkan; close; procedure Tfrmjadwalkunci.btnciptaClick(Sender: TObject); i : integer; tanda := true; C:= ''; K := edk.text;

19 Len := length(k); for i:= 0 to (len-1) do key[i]:= Ord(K[i+1]); Twofishinit(Data,@key,sizeof(key),nil); application.messagebox('kotak Substitusi telah sukses dibentuk!!!','informasi',mb_iconinformation); procedure Tfrmjadwalkunci.btntampilkanClick(Sender: TObject); if tanda = false then application.messagebox('harap Ciptakan Kunci terlebih dahulu','pesan Kesalahan',mb_iconerror) else // iw key 0 C := ''; C := C + inttohex(data.subkeys[0],2); edkeyiw0.text := C; // iw key 1 C := ''; C := C + inttohex(data.subkeys[1],2); edkeyiw1.text := C; // iw key 2 C := ''; C := C + inttohex(data.subkeys[2],2); edkeyiw2.text := C; // iw key 3 C := ''; C := C + inttohex(data.subkeys[3],2); edkeyiw3.text := C; procedure Tfrmjadwalkunci.btntampil4Click(Sender: TObject); if tanda = false then application.messagebox('harap Ciptakan Kunci terlebih dahulu','pesan Kesalahan',mb_iconerror) else // ow key 0 C := ''; C := C + inttohex(data.subkeys[4],2); edkeyow0.text := C; // ow key 1 C := ''; C := C + inttohex(data.subkeys[5],2); edkeyow1.text := C; // ow key 2 C := ''; C := C + inttohex(data.subkeys[6],2); edkeyow2.text := C; // ow key 3 C := ''; C := C + inttohex(data.subkeys[7],2); edkeyow3.text := C;

20 procedure Tfrmjadwalkunci.btnulangClick(Sender: TObject); kosongkan; procedure Tfrmjadwalkunci.btntampilkan3Click(Sender: TObject); if tanda = false then application.messagebox('harap Ciptakan Kunci terlebih dahulu','pesan Kesalahan',mb_iconerror) else // ro 9 C := ''; C := C + inttohex(data.subkeys[9],2); edhexro9.text := C; // ro 11 C := ''; C := C + inttohex(data.subkeys[11],2); edhexro11.text := C; // ro 13 C := ''; C := C + inttohex(data.subkeys[13],2); edhexro13.text := C; // ro 15 C := ''; C := C + inttohex(data.subkeys[15],2); edhexro15.text := C; // ro 17 C := ''; C := C + inttohex(data.subkeys[17],2); edhexro17.text := C; // ro 19 C := ''; C := C + inttohex(data.subkeys[19],2); edhexro19.text := C; // ro 21 C := ''; C := C + inttohex(data.subkeys[21],2); edhexro21.text := C; // ro 23 C := ''; C := C + inttohex(data.subkeys[23],2); edhexro23.text := C; // ro 25 C := ''; C := C + inttohex(data.subkeys[25],2); edhexro25.text := C; // ro 27 C := ''; C := C + inttohex(data.subkeys[27],2); edhexro27.text := C; // ro 29 C := ''; C := C + inttohex(data.subkeys[29],2); edhexro29.text := C; // ro 31 C := ''; C := C + inttohex(data.subkeys[31],2); edhexro31.text := C;

21 // ro 33 C := ''; C := C + inttohex(data.subkeys[33],2); edhexro33.text := C; // ro 35 C := ''; C := C + inttohex(data.subkeys[35],2); edhexro35.text := C; // ro 37 C := ''; C := C + inttohex(data.subkeys[37],2); edhexro37.text := C; // ro 39 C := ''; C := C + inttohex(data.subkeys[39],2); edhexro39.text := C; procedure Tfrmjadwalkunci.btntampilkan2Click(Sender: TObject); if tanda = false then application.messagebox('harap Ciptakan Kunci terlebih dahulu','pesan Kesalahan',mb_iconerror) else // ro 8 C := ''; C := C + inttohex(data.subkeys[8],2); edhexro8.text := C; // ro 10 C := ''; C := C + inttohex(data.subkeys[10],2); edhexro10.text := C; // ro 12 C := ''; C := C + inttohex(data.subkeys[12],2); edhexro12.text := C; // ro 14 C := ''; C := C + inttohex(data.subkeys[14],2); edhexro14.text := C; // ro 16 C := ''; C := C + inttohex(data.subkeys[16],2); edhexro16.text := C; // ro 18 C := ''; C := C + inttohex(data.subkeys[18],2); edhexro18.text := C; // ro 20 C := ''; C := C + inttohex(data.subkeys[20],2); edhexro20.text := C; // ro 22 C := ''; C := C + inttohex(data.subkeys[22],2); edhexro22.text := C; // ro 24

22 C := ''; C := C + inttohex(data.subkeys[24],2); edhexro24.text := C; // ro 267 C := ''; C := C + inttohex(data.subkeys[26],2); edhexro26.text := C; // ro 28 C := ''; C := C + inttohex(data.subkeys[28],2); edhexro28.text := C; // ro 30 C := ''; C := C + inttohex(data.subkeys[30],2); edhexro30.text := C; // ro 32 C := ''; C := C + inttohex(data.subkeys[32],2); edhexro32.text := C; // ro 34 C := ''; C := C + inttohex(data.subkeys[34],2); edhexro34.text := C; // ro 36 C := ''; C := C + inttohex(data.subkeys[36],2); edhexro36.text := C; // ro 38 C := ''; C := C + inttohex(data.subkeys[38],2); edhexro38.text := C; procedure Tfrmjadwalkunci.FormClose(Sender: TObject; Action: TCloseAction); btnkembaliclick(sender); end.

23 5. Unit Kunci Kotak-S unit Unkotakkunci; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, twofish, Buttons; type Tfrmkotakkunci = class(tform) bbtnkembali: TBitBtn; Label4: TLabel; Label5: TLabel; edp: TEdit; edk: TEdit; btnciptakan: TButton; Label1: TLabel; Label2: TLabel; Label3: TLabel; Label6: TLabel; edkotakkunci3: TEdit; edkotakkunci2: TEdit; edkotakkunci1: TEdit; edkotakkunci0: TEdit; btntampilkan: TBitBtn; btnulangi: TBitBtn; procedure bbtnkembaliclick(sender: TObject); procedure FormClose(Sender: TObject; Action: TCloseAction); procedure btnciptakanclick(sender: TObject); procedure btntampilkanclick(sender: TObject); procedure btnulangiclick(sender: TObject); private procedure kosong; { Private declarations } public { Public declarations } frmkotakkunci: Tfrmkotakkunci; data : TTwofishdata; key : array[0..31]of byte; inb : array[0..15] of byte; C, K, P : string; len : integer; tanda : boolean; implementation {$R *.dfm} procedure Tfrmkotakkunci.kosong; TwofishBurn(data); FillChar(key,Sizeof(key),0); FillChar(inB,Sizeof(inB),0); tanda := false; edp.text := ''; edk.text := ''; edkotakkunci0.text := ''; edkotakkunci1.text := ''; edkotakkunci2.text := ''; edkotakkunci3.text := ''; procedure Tfrmkotakkunci.bbtnkembaliClick(Sender: TObject); kosong; close; procedure Tfrmkotakkunci.FormClose(Sender: TObject; Action: TCloseAction);

24 bbtnkembaliclick(sender); procedure Tfrmkotakkunci.btnciptakanClick(Sender: TObject); i : integer; tanda := true; C:= ''; K := edk.text; Len := length(k); for i:= 0 to (len-1) do key[i]:= Ord(K[i+1]); Twofishinit(Data,@key,sizeof(key),nil); application.messagebox('kunci Kotak Substitusi telah sukses dibentuk!!!','informasi',mb_iconinformation); procedure Tfrmkotakkunci.btntampilkanClick(Sender: TObject); if tanda = false then application.messagebox('harap Ciptakan Kunci Kotak Subtitusi terlebih dahulu','pesan Kesalahan',mb_iconerror) else // box key 0 C := ''; C := C + inttohex(data.sboxkeys[0],2); edkotakkunci3.text := C; // box key 1 C := ''; C := C + inttohex(data.sboxkeys[1],2); edkotakkunci2.text := C; // box key 2 C := ''; C := C + inttohex(data.sboxkeys[2],2); edkotakkunci1.text := C; // box key 3 C := ''; C := C + inttohex(data.sboxkeys[3],2); edkotakkunci0.text := C; procedure Tfrmkotakkunci.btnulangiClick(Sender: TObject); kosong; end.

25 6. Unit Kotak-S unit Unsbox; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, twofish, StdCtrls, Buttons; type Tfrmsbox = class(tform) Label4: TLabel; Label5: TLabel; edp: TEdit; edk: TEdit; btnsbox0: TButton; btnsbox1: TButton; btnsbox2: TButton; btnsbox3: TButton; memsbox: TMemo; btnkembali: TButton; btnciptakan: TButton; hexsbox0: TButton; hexsbox1: TButton; hexsbox2: TButton; hexsbox3: TButton; btnulang: TBitBtn; procedure btnkembaliclick(sender: TObject); procedure btnciptakanclick(sender: TObject); procedure btnsbox0click(sender: TObject); procedure btnsbox1click(sender: TObject); procedure btnsbox2click(sender: TObject); procedure btnsbox3click(sender: TObject); procedure hexsbox0click(sender: TObject); procedure hexsbox1click(sender: TObject); procedure hexsbox3click(sender: TObject); procedure hexsbox2click(sender: TObject); procedure btnulangclick(sender: TObject); private procedure kosongkan; { Private declarations } public { Public declarations } frmsbox: Tfrmsbox; data : TTwofishdata; key : array[0..31]of byte; inb : array[0..15] of byte; C, K, P : string; len : integer; implementation {$R *.dfm} procedure Tfrmsbox.kosongkan; TwofishBurn(data); FillChar(key,Sizeof(key),0); FillChar(inB,Sizeof(inB),0); edp.text := ''; edk.text := ''; memsbox.lines.clear; procedure Tfrmsbox.btnkembaliClick(Sender: TObject); kosongkan; close; procedure Tfrmsbox.btnciptakanClick(Sender: TObject); i : integer;

26 C:= ''; K := edk.text; Len := length(k); for i:= 0 to (len-1) do key[i]:= Ord(K[i+1]); Twofishinit(Data,@key,sizeof(key),nil); application.messagebox('kotak Substitusi telah sukses dibentuk!!!','informasi',mb_iconinformation); procedure Tfrmsbox.btnsbox0Click(Sender: TObject); i : integer; nilai : string; memsbox.lines.clear; i := 0; while i< 256 do nilai := nilai + chr(data.sbox[0 and 2,2*i+(0 and 1)]) + ' ' +chr(data.sbox[0 and 2,2*i+(0 and 1)+2]); if ((i <> 0) and (i mod 32 = 0)) or (i = 255) then memsbox.lines.add(nilai); nilai := ''; memsbox.lines.add(#13); Inc(i,1); procedure Tfrmsbox.btnsbox1Click(Sender: TObject); i : integer; nilai : string; memsbox.lines.clear; i := 0; while i< 256 do nilai := nilai + chr(data.sbox[0 and 2,2*i+(1 and 1)]) + ' ' +chr(data.sbox[0 and 2,2*i+(1 and 1)+2]); if ((i <> 0) and (i mod 32 = 0)) or (i = 255) then memsbox.lines.add(nilai); nilai := ''; memsbox.lines.add(#13); Inc(i,1); procedure Tfrmsbox.btnsbox2Click(Sender: TObject); i : integer; nilai : string; memsbox.lines.clear; i := 0; while i< 256 do

27 nilai := nilai + chr(data.sbox[2 and 2,2*i+(2 and 1)]) + ' ' +chr(data.sbox[2 and 2,2*i+(2 and 1)+2]); if ((i <> 0) and (i mod 32 = 0)) or (i = 255) then memsbox.lines.add(nilai); nilai := ''; memsbox.lines.add(#13); Inc(i,1); procedure Tfrmsbox.btnsbox3Click(Sender: TObject); i : integer; nilai : string; memsbox.lines.clear; i := 0; while i< 256 do nilai := nilai + chr(data.sbox[2 and 2,2*i+(3 and 1)]) + ' ' +chr(data.sbox[2 and 2,2*i+(3 and 1)+2]); if ((i <> 0) and (i mod 32 = 0)) or (i = 255) then memsbox.lines.add(nilai); nilai := ''; memsbox.lines.add(#13); Inc(i,1); procedure Tfrmsbox.hexsbox0Click(Sender: TObject); i : integer; nilai : string; memsbox.lines.clear; i := 0; while i< 256 do nilai := nilai + inttohex(data.sbox[0 and 2,2*i+(0 and 1)],2) + ' ' + inttohex((data.sbox[0 and 2,2*i+(0 and 1)+2]),2); if ((i <> 0) and (i mod 32 = 0)) or (i = 255) then memsbox.lines.add(nilai); nilai := ''; memsbox.lines.add(#13); memsbox.lines.add(#13); Inc(i,1); procedure Tfrmsbox.hexsbox1Click(Sender: TObject); i : integer; nilai : string; memsbox.lines.clear;

28 i := 0; while i< 256 do nilai := nilai + inttohex(data.sbox[0 and 2,2*i+(1 and 1)],2) + ' ' + inttohex((data.sbox[0 and 2,2*i+(1 and 1)+2]),2); if ((i <> 0) and (i mod 32 = 0)) or (i = 255) then memsbox.lines.add(nilai); nilai := ''; memsbox.lines.add(#13); memsbox.lines.add(#13); Inc(i,1); procedure Tfrmsbox.hexsbox3Click(Sender: TObject); i : integer; nilai : string; memsbox.lines.clear; i := 0; while i< 256 do nilai := nilai + inttohex(data.sbox[2 and 2,2*i+(3 and 1)],2) + ' ' + inttohex((data.sbox[2 and 2,2*i+(3 and 1)+2]),2); if ((i <> 0) and (i mod 32 = 0)) or (i = 255) then memsbox.lines.add(nilai); nilai := ''; memsbox.lines.add(#13); memsbox.lines.add(#13); Inc(i,1); procedure Tfrmsbox.hexsbox2Click(Sender: TObject); i : integer; nilai : string; memsbox.lines.clear; i := 0; while i< 256 do nilai := nilai + inttohex(data.sbox[2 and 2,2*i+(2 and 1)],2) + ' ' + inttohex((data.sbox[2 and 2,2*i+(2 and 1)+2]),2); if ((i <> 0) and (i mod 32= 0)) or (i = 255) then memsbox.lines.add(nilai); nilai := ''; memsbox.lines.add(#13); memsbox.lines.add(#13); Inc(i,1);

29 procedure Tfrmsbox.btnulangClick(Sender: TObject); kosongkan; end. 7. Unit MDS unit UnMDS; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, twofish, Buttons; type Tfrmmds = class(tform) memmds: TMemo; btnkembali: TBitBtn; RG: TRadioGroup; procedure btnkembaliclick(sender: TObject); procedure RGClick(Sender: TObject); procedure FormClose(Sender: TObject; Action: TCloseAction); private { Private declarations } public { Public declarations } frmmds: Tfrmmds; data : ttwofishdata; implementation {$R *.dfm} procedure Tfrmmds.btnkembaliClick(Sender: TObject); twofishburn(data); memmds.lines.clear; close; procedure Tfrmmds.RGClick(Sender: TObject); i : integer; nilai : string; memmds.lines.clear; i := 0; mtrxds(data); case rg.itemindex of 0 : while i< 256 do nilai := nilai + inttohex(data.mtrx[0,i],3) + ' '; if ((i <> 0) and ((i + 1) mod 2 = 0)) or (i = 255) then memmds.lines.add(nilai); nilai := ''; memmds.lines.add(#13);

30 Inc(i,1); 1 : while i< 256 do nilai := nilai + inttohex(data.mtrx[1,i],3) +' '; if ((i <> 0) and ((i + 1) mod 2 = 0)) or (i = 255) then memmds.lines.add(nilai); nilai := ''; memmds.lines.add(#13); memmds.lines.add(#13); Inc(i,1); 2 : while i< 256 do nilai := nilai + inttohex(data.mtrx[2,i],3) + ' '; if ((i <> 0) and ((i + 1) mod 2 = 0)) or (i = 255) then memmds.lines.add(nilai); nilai := ''; memmds.lines.add(#13); memmds.lines.add(#13); Inc(i,1); 3 : while i< 256 do nilai := nilai + inttohex(data.mtrx[3,i],8) + ' '; if ((i <> 0) and ((i + 1) mod 2 = 0)) or (i = 255) then memmds.lines.add(nilai); nilai := ''; memmds.lines.add(#13); memmds.lines.add(#13); Inc(i,1); procedure Tfrmmds.FormClose(Sender: TObject; Action: TCloseAction); btnkembaliclick(sender); end.

31 8. Unit Avalanche Effect unit UnAE; interface uses Windows, Messages, math, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Twofish, Buttons, XPMan; type TfrmAE = class(tform) GroupBox1: TGroupBox; GroupBox2: TGroupBox; bbtnpp: TBitBtn; bbtnpk: TBitBtn; bbtnkembali: TBitBtn; Label1: TLabel; lblp1: TLabel; Label2: TLabel; lblp2: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel; Label6: TLabel; Label7: TLabel; lblpc1: TLabel; lblpc2: TLabel; Label8: TLabel; Label9: TLabel; Label10: TLabel; Label11: TLabel; Label12: TLabel; Label13: TLabel; Label14: TLabel; Label15: TLabel; Label16: TLabel; Label17: TLabel; lblkc1: TLabel; lblkc2: TLabel; AE1: TLabel; Label19: TLabel; XPManifest1: TXPManifest; Label20: TLabel; Label21: TLabel; rubah1: TLabel; Label18: TLabel; Label22: TLabel; edp1: TEdit; edp2: TEdit; bbtnpp2: TBitBtn; rubah2: TLabel; Label23: TLabel; Label24: TLabel; edk1: TEdit; edk2: TEdit; bbtnpk2: TBitBtn; bbtnburn: TBitBtn; BitBtn1: TBitBtn; Edit1: TEdit; Edit2: TEdit; Edit3: TEdit; Edit4: TEdit; procedure bbtnppclick(sender: TObject); procedure bbtnpkclick(sender: TObject); procedure bbtnkembaliclick(sender: TObject); procedure bbtnpp2click(sender: TObject); procedure kosong; procedure bbtnburnclick(sender: TObject); procedure BitBtn1Click(Sender: TObject); procedure bbtnpk2click(sender: TObject); private { Private declarations } public { Public declarations } frmae: TfrmAE; data : ttwofishdata; Block : array[0..15] of byte; inblock : array[0..15] of byte; inblock2 : array[0..15] of byte; Block2 : array[0..15] of byte; temp : array[0..15] of byte; temp2 : array[0..31] of byte; keya : array[0..31] of byte; keyb : array[0..31] of byte; Blockiw : array[0..15] of byte; Blockro1 : array[0..15] of byte; Blockro2 : array[0..15] of byte; Blockro3 : array[0..15] of byte; Blockro4 : array[0..15] of byte; Blockro5 : array[0..15] of byte; Blockro6 : array[0..15] of byte; Blockro7 : array[0..15] of byte; Blockro8 : array[0..15] of byte; function roundd (x : real; d: integer): real; implementation

32 {$R *.dfm} procedure tfrmae.kosong; FillChar(temp,Sizeof(temp),0); FillChar(temp2,Sizeof(temp2),0); FillChar(Block,Sizeof(Block),0); FillChar(Block2,Sizeof(Block2),0); FillChar(inBlock,Sizeof(Block),0); FillChar(inBlock2,Sizeof(Block2),0); FillChar(Blockiw,Sizeof(Blockiw),0); FillChar(Blockro1,Sizeof(Blockro1),0); FillChar(Blockro2,Sizeof(Blockro2),0); FillChar(Blockro3,Sizeof(Blockro3),0); FillChar(Blockro4,Sizeof(Blockro4),0); FillChar(Blockro5,Sizeof(Blockro5),0); FillChar(Blockro6,Sizeof(Blockro6),0); FillChar(Blockro7,Sizeof(Blockro7),0); FillChar(Blockro8,Sizeof(Blockro8),0); function roundd (x : real; d: integer): real; n : real; n := intpower(10,d); x := x * n; result := (int(x) + int(frac(x)*2))/n; procedure TfrmAE.bbtnppClick(Sender: TObject); const key : array[0..31] of byte = ($00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00, $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00); inblock : array[0..15] of byte = ($00,$00,$00,$00,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0); inblock2 : array[0..15] of byte = ($10,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00); i, jumlah : integer; C : string; persen : real; c := ''; Twofishinit(Data,@key,sizeof(key),nil);

33 C := C + inttohex(block[i],2); lblpc1.caption := C; temp[i] := inblock[i] xor inblock2[i]; c := ''; C := C + inttohex(temp[i],2); jumlah := 0; for i := 1 to 32 do if C[i] = '0' then jumlah := jumlah + 0 else if C[i] = '1' then jumlah := jumlah + 1 else if C[i] = '2' then jumlah := jumlah + 1 else if C[i] = '3' then jumlah := jumlah + 2 else if C[i] = '4' then jumlah := jumlah + 1 else if C[i] = '5' then jumlah := jumlah + 2 else if C[i] = '6' then jumlah := jumlah + 2 else if C[i] = '7' then jumlah := jumlah + 3 else if C[i] = '8' then jumlah := jumlah + 1 else if C[i] = '9' then jumlah := jumlah + 2 else if C[i] = 'A' then jumlah := jumlah + 2 else if C[i] = 'B' then jumlah := jumlah + 3 else if C[i] = 'C' then jumlah := jumlah + 2 else if C[i] = 'D' then jumlah := jumlah + 3 else if C[i] = 'E' then jumlah := jumlah + 3 else if C[i] = 'F' then jumlah := jumlah + 4; rubah1.caption := 'Perubahan plainteks sebanyak ' + inttostr(jumlah) +' bit'; TwofishEncryptECB(Data,@inblock2,@Block2,@Blockiw,@Blockro1,@Blockro 2,@Blockro3,@Blockro4,@Blockro5,@Blockro6,@Blockro7,@Blockro8); c := ''; C := C + inttohex(block2[i],2); lblpc2.caption := C; TwofishBurn(data); temp[i] := block[i] xor block2[i]; c := ''; C := C + inttohex(temp[i],2); jumlah := 0; for i := 1 to 32 do if C[i] = '0' then jumlah := jumlah + 0 else if C[i] = '1' then jumlah := jumlah + 1 else if C[i] = '2' then jumlah := jumlah + 1 else if C[i] = '3' then jumlah := jumlah + 2

34 else if C[i] = '4' then jumlah := jumlah + 1 else if C[i] = '5' then jumlah := jumlah + 2 else if C[i] = '6' then jumlah := jumlah + 2 else if C[i] = '7' then jumlah := jumlah + 3 else if C[i] = '8' then jumlah := jumlah + 1 else if C[i] = '9' then jumlah := jumlah + 2 else if C[i] = 'A' then jumlah := jumlah + 2 else if C[i] = 'B' then jumlah := jumlah + 3 else if C[i] = 'C' then jumlah := jumlah + 2 else if C[i] = 'D' then jumlah := jumlah + 3 else if C[i] = 'E' then jumlah := jumlah + 3 else if C[i] = 'F' then jumlah := jumlah + 4; persen := (jumlah / 128 * 100); label20.caption := 'Perubahan Cipherteks sebanyak' + inttostr(jumlah) +' bit' + #13 + 'atau sebanyak ' + floattostr(roundd(persen,3)) + '%'; edit1.text := lblpc1.caption; edit2.text := lblpc2.caption; procedure TfrmAE.bbtnpkClick(Sender: TObject); const key1 : array[0..31] of byte = ($00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00, $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00); key2 : array[0..31] of byte = ($80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$0,$00, $00, $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00); inblock : array[0..15] of byte = ($00,$00,$00,$00,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0); i, jumlah : integer; C : string; persen : real; c := ''; Twofishinit(Data,@key1,sizeof(key1),nil); C := C + inttohex(block[i],2); lblkc1.caption := C; for i := 0 to 31 do temp2[i] := key1[i] xor key2[i]; c := ''; for i := 0 to 31 do C := C + inttohex(temp2[i],2);

35 jumlah := 0; for i := 1 to 64 do if C[i] = '0' then jumlah := jumlah + 0 else if C[i] = '1' then jumlah := jumlah + 1 else if C[i] = '2' then jumlah := jumlah + 1 else if C[i] = '3' then jumlah := jumlah + 2 else if C[i] = '4' then jumlah := jumlah + 1 else if C[i] = '5' then jumlah := jumlah + 2 else if C[i] = '6' then jumlah := jumlah + 2 else if C[i] = '7' then jumlah := jumlah + 3 else if C[i] = '8' then jumlah := jumlah + 1 else if C[i] = '9' then jumlah := jumlah + 2 else if C[i] = 'A' then jumlah := jumlah + 2 else if C[i] = 'B' then jumlah := jumlah + 3 else if C[i] = 'C' then jumlah := jumlah + 2 else if C[i] = 'D' then jumlah := jumlah + 3 else if C[i] = 'E' then jumlah := jumlah + 3 else if C[i] = 'F' then jumlah := jumlah + 4; rubah2.caption := 'Perubahan Kunci sebanyak ' + inttostr(jumlah) +' bit'; TwofishBurn(data); Twofishinit(Data,@key2,sizeof(key2),nil); TwofishEncryptECB(Data,@inblock,@Block2,@Blockiw,@Blockro1,@Blockro2,@Blockro3,@Blockro4,@Blockro5,@Blockro6,@Blockro7,@Blockro8); c := ''; C := C + inttohex(block2[i],2); lblkc2.caption := C; TwofishBurn(data); temp[i] := block[i] xor block2[i]; c := ''; C := C + inttohex(temp[i],2); jumlah := 0; for i := 1 to 32 do if C[i] = '0' then jumlah := jumlah + 0 else if C[i] = '1' then jumlah := jumlah + 1 else if C[i] = '2' then jumlah := jumlah + 1 else if C[i] = '3' then jumlah := jumlah + 2 else if C[i] = '4' then jumlah := jumlah + 1 else if C[i] = '5' then jumlah := jumlah + 2 else if C[i] = '6' then jumlah := jumlah + 2 else if C[i] = '7' then jumlah := jumlah + 3 else if C[i] = '8' then jumlah := jumlah + 1 else if C[i] = '9' then jumlah := jumlah + 2 else if C[i] = 'A' then jumlah := jumlah + 2 else if C[i] = 'B' then jumlah := jumlah + 3 else if C[i] = 'C' then jumlah := jumlah + 2

36 else if C[i] = 'D' then jumlah := jumlah + 3 else if C[i] = 'E' then jumlah := jumlah + 3 else if C[i] = 'F' then jumlah := jumlah + 4; persen := (jumlah / 128 * 100); label21.caption := 'Perubahan Cipherteks sebanyak ' + inttostr(jumlah) +' bit' + #13 + 'atau sebanyak ' + floattostr(roundd(persen,3)) + '%'; edit3.text := lblkc1.caption; edit4.text := lblkc2.caption; procedure TfrmAE.bbtnkembaliClick(Sender: TObject); close; procedure TfrmAE.bbtnpp2Click(Sender: TObject); const key : array[0..31] of byte = ($00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00, $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00); i, jumlah, len : integer; C, P : string; persen : real; C:= ''; P:= ''; P := edp1.text; Len := length(p); for i:= 0 to (len-1) do inblock[i] := Ord(P[i+1]); P:= ''; P := edp2.text; Len := length(p); for i:= 0 to (len-1) do inblock2[i] := Ord(P[i+1]); Twofishinit(Data,@key,sizeof(key),nil); TwofishEncryptECB(Data,@inblock2,@Block2,@Blockiw,@Blockro1,@Blockro 2,@Blockro3,@Blockro4,@Blockro5,@Blockro6,@Blockro7,@Blockro8); c:= ''; C := C + inttohex(block[i],2); lblpc1.caption := C; c := '';

37 C := C + inttohex(block2[i],2); lblpc2.caption := C; temp[i] := inblock[i] xor inblock2[i]; c := ''; C := C + inttohex(temp[i],2); jumlah := 0; for i := 1 to 32 do if C[i] = '0' then jumlah := jumlah + 0 else if C[i] = '1' then jumlah := jumlah + 1 else if C[i] = '2' then jumlah := jumlah + 1 else if C[i] = '3' then jumlah := jumlah + 2 else if C[i] = '4' then jumlah := jumlah + 1 else if C[i] = '5' then jumlah := jumlah + 2 else if C[i] = '6' then jumlah := jumlah + 2 else if C[i] = '7' then jumlah := jumlah + 3 else if C[i] = '8' then jumlah := jumlah + 1 else if C[i] = '9' then jumlah := jumlah + 2 else if C[i] = 'A' then jumlah := jumlah + 2 else if C[i] = 'B' then jumlah := jumlah + 3 else if C[i] = 'C' then jumlah := jumlah + 2 else if C[i] = 'D' then jumlah := jumlah + 3 else if C[i] = 'E' then jumlah := jumlah + 3 else if C[i] = 'F' then jumlah := jumlah + 4; rubah1.caption := 'Perubahan plainteks sebanyak ' + inttostr(jumlah) +' bit'; temp[i] := block[i] xor block2[i]; c := ''; C := C + inttohex(temp[i],2); jumlah := 0; for i := 1 to 32 do if C[i] = '0' then jumlah := jumlah + 0 else if C[i] = '1' then jumlah := jumlah + 1 else if C[i] = '2' then jumlah := jumlah + 1 else if C[i] = '3' then jumlah := jumlah + 2 else if C[i] = '4' then jumlah := jumlah + 1 else if C[i] = '5' then jumlah := jumlah + 2 else if C[i] = '6' then jumlah := jumlah + 2 else if C[i] = '7' then jumlah := jumlah + 3 else if C[i] = '8' then jumlah := jumlah + 1 else if C[i] = '9' then jumlah := jumlah + 2 else if C[i] = 'A' then jumlah := jumlah + 2 else if C[i] = 'B' then jumlah := jumlah + 3 else if C[i] = 'C' then jumlah := jumlah + 2 else if C[i] = 'D' then jumlah := jumlah + 3 else if C[i] = 'E' then jumlah := jumlah + 3

38 else if C[i] = 'F' then jumlah := jumlah + 4; persen := (jumlah / 128 * 100); label20.caption := 'Perubahan Cipherteks sebanyak ' + inttostr(jumlah) +' bit' + #13 + 'atau sebanyak ' + floattostr(roundd(persen,3)) + '%'; TwofishBurn(data); kosong; edit1.text := lblpc1.caption; edit2.text := lblpc2.caption; procedure TfrmAE.bbtnburnClick(Sender: TObject); kosong; TwofishBurn(data); procedure TfrmAE.BitBtn1Click(Sender: TObject); kosong; TwofishBurn(data); procedure TfrmAE.bbtnpk2Click(Sender: TObject); const inblock : array[0..15] of byte = ($00,$00,$00,$00,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0); k, c : string; len, i, jumlah : integer; persen : real; K:= ''; C:= ''; K := edk1.text; Len := length(k); for i:= 0 to (len-1) do keya[i]:= Ord(K[i+1]); // inisialisasi kunci K:= ''; K := edk2.text; Len := length(k); for i:= 0 to (len-1) do keyb[i]:= Ord(K[i+1]); // inisialisasi kunci2 Twofishinit(Data,@keya,sizeof(keya),nil); TwofishBurn(data); Twofishinit(Data,@keyb,sizeof(keyb),nil); TwofishEncryptECB(Data,@inblock,@Block2,@Blockiw,@Blockro1,@Blockro2,@Blockro3,@Blockro4,@Blockro5,@Blockro6,@Blockro7,@Blockro8);

39 for i := 0 to 31 do temp2[i] := keya[i] xor keyb[i]; c := ''; for i := 0 to 31 do C := C + inttohex(temp2[i],2); jumlah := 0; for i := 1 to 64 do if C[i] = '0' then jumlah := jumlah + 0 else if C[i] = '1' then jumlah := jumlah + 1 else if C[i] = '2' then jumlah := jumlah + 1 else if C[i] = '3' then jumlah := jumlah + 2 else if C[i] = '4' then jumlah := jumlah + 1 else if C[i] = '5' then jumlah := jumlah + 2 else if C[i] = '6' then jumlah := jumlah + 2 else if C[i] = '7' then jumlah := jumlah + 3 else if C[i] = '8' then jumlah := jumlah + 1 else if C[i] = '9' then jumlah := jumlah + 2 else if C[i] = 'A' then jumlah := jumlah + 2 else if C[i] = 'B' then jumlah := jumlah + 3 else if C[i] = 'C' then jumlah := jumlah + 2 else if C[i] = 'D' then jumlah := jumlah + 3 else if C[i] = 'E' then jumlah := jumlah + 3 else if C[i] = 'F' then jumlah := jumlah + 4; rubah2.caption := 'Perubahan Kunci sebanyak ' + inttostr(jumlah) +' bit'; C:= ''; C := C + inttohex(block[i],2); lblkc1.caption := C; c := ''; C := C + inttohex(block2[i],2); lblkc2.caption := C; temp[i] := block[i] xor block2[i]; c := ''; C := C + inttohex(temp[i],2); jumlah := 0; for i := 1 to 32 do if C[i] = '0' then jumlah := jumlah + 0 else if C[i] = '1' then jumlah := jumlah + 1 else if C[i] = '2' then jumlah := jumlah + 1 else if C[i] = '3' then jumlah := jumlah + 2 else if C[i] = '4' then jumlah := jumlah + 1 else if C[i] = '5' then jumlah := jumlah + 2 else if C[i] = '6' then jumlah := jumlah + 2 else if C[i] = '7' then jumlah := jumlah + 3 else if C[i] = '8' then jumlah := jumlah + 1

LAMPIRAN Listing Program

LAMPIRAN Listing Program LAMPIRAN Listing Program unit umain; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ComCtrls, StdCtrls, ExtCtrls, ExtDlgs, DCPcrypt2, DCPrc4, DCPsha1,

More information

LAMPIRAN A: LIST PROGRAM

LAMPIRAN A: LIST PROGRAM LAMPIRAN A: LIST PROGRAM Form Login unit ULogin; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, DB, IBQuery, IBDatabase, IBCustomDataSet, IBTable,

More information

NATIONAL SENIOR CERTIFICATE GRADE12

NATIONAL SENIOR CERTIFICATE GRADE12 NATIONAL SENIOR CERTIFICATE GRADE12 INFORMATION TECHNOLOGY P1 FEBRUARY/MARCH 2018 MARKING GUIDELINES MARKS: 150 These marking guidelines consist of 21 pages. Information Technology/P1 2 DBE/Feb. Mar. 2018

More information

NATIONAL SENIOR CERTIFICATE GRADE12

NATIONAL SENIOR CERTIFICATE GRADE12 NATIONAL SENIOR CERTIFICATE GRADE12 INFORMATION TECHNOLOGY P1 NOVEMBER 2017 MARKING GUIDELINES MARKS: 150 These marking guidelines consist of 26 pages. Information Technology/P1 2 DBE/November 2017 GENERAL

More information

UJIAN AKHIR SEMESTER TEKNIK INFORMATIKA SEKOLAH TINGGI TEKNOLOGI DUTA BANGSA

UJIAN AKHIR SEMESTER TEKNIK INFORMATIKA SEKOLAH TINGGI TEKNOLOGI DUTA BANGSA UJIAN AKHIR SEMESTER TEKNIK INFORMATIKA SEKOLAH TINGGI TEKNOLOGI DUTA BANGSA Dosen Pembimbing : Dedi W ST,. MM Nama : Elly Sunandy NIM : 13158279 Pemrograman Terstruktur Membuat program dengan Delphi 7

More information

LAMPIRAN A: DDL DATABASE

LAMPIRAN A: DDL DATABASE LAMPIRAN A: DDL DATABASE MySQL-Front 5.1 (Build 2.7) Host: localhost Database: mobil ------------------------------------------------------ Server version 5.0.41-community-nt USE `mobil`; Source for table

More information

GRADE/GRAAD 11 NOVEMBER 2013 INFORMATION TECHNOLOGY P1 INLIGTINGSTEGNOLOGIE V1 MEMORANDUM

GRADE/GRAAD 11 NOVEMBER 2013 INFORMATION TECHNOLOGY P1 INLIGTINGSTEGNOLOGIE V1 MEMORANDUM NATIONAL SENIOR CERTIFICATE NASIONALE SENIOR SERTIFIKAAT GRADE/GRAAD 11 NOVEMBER 2013 INFORMATION TECHNOLOGY P1 INLIGTINGSTEGNOLOGIE V1 MEMORANDUM MARKS/PUNTE: 150 This memorandum consists of 6 pages.

More information

2. Design and Development

2. Design and Development Postage Calculator 1. The task Design and implement a program for employees of a travel agency who send out documents to the UK and EU only; the program will calculate the cost of postage. Each envelope

More information

LAMPIRAN A LISTING PROGRAM

LAMPIRAN A LISTING PROGRAM LAMPIRAN LAMPIRAN A LISTING PROGRAM //Program Utama unit umain; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ComCtrls, Menus, ExtCtrls, StdCtrls, Lucifer,VisSem,

More information

LAMPIRAN A. Foto Alat

LAMPIRAN A. Foto Alat LAMPIRAN A Foto Alat A-1 A-2 Rangkaian Skematik PCB Sistem Monitoring Infus A-3 LAMPIRAN B Program pada Mikrokontroller AVR Atmega16...B-1 Program pada Borlan Delhpi 7.0...B-9 PROGRAM UTAMA /*****************************************************

More information

uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, ImgList, StdCtrls, Buttons, MPlayer;

uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, ImgList, StdCtrls, Buttons, MPlayer; unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, ImgList, StdCtrls, Buttons, MPlayer; type TForm1 = class(tform) Cenario: TImage;

More information

LAMPIRAN 1 TATA CARA PENGGUNAAN SOFTWARE ALGORITMA GENETIKA

LAMPIRAN 1 TATA CARA PENGGUNAAN SOFTWARE ALGORITMA GENETIKA LAMPIRAN 1 TATA CARA PENGGUNAAN SOFTWARE ALGORITMA GENETIKA Langkah-langkah penggunaan Software Algoritma Genetika Job Shop : 1. Buka program Algoritma Genetika Job Shop 2. Masukkan data-data yang dibutuhkan

More information

LAMPIRAN A. Listing Program. Program pada Borland Delphi 7.0 A-1 Program pada CodeVisionAVR C Compiler A-6

LAMPIRAN A. Listing Program. Program pada Borland Delphi 7.0 A-1 Program pada CodeVisionAVR C Compiler A-6 A Listing Program Program pada Borland Delphi 7.0 A-1 Program pada CodeVisionAVR C Compiler A-6 LISTING PROGRAM BORLAND DELPHI 7.0 Inisialisasi ==========================================================

More information

Source code for simulations: 1 of 11

Source code for simulations: 1 of 11 The following is the source code for the simulations reported in Clinchy, Haydon and Smith (Pattern process: what does patch occupancy really tell us about metapopulation dynamics). unit Main; interface

More information

Listing Program Tugas Akhir (TugasAkhir.dpr)

Listing Program Tugas Akhir (TugasAkhir.dpr) L1 Listing Program Tugas Akhir (TugasAkhir.dpr) program TugasAkhir; uses Forms, udb in 'udb.pas' {dmta: TDataModule}, ufungsi in 'ufungsi.pas', uutama in 'uutama.pas' {futama}, ulogin in 'ulogin.pas' {flogin},

More information

NATIONAL SENIOR CERTIFICATE GRADE12

NATIONAL SENIOR CERTIFICATE GRADE12 NATIONAL SENIOR CERTIFICATE GRADE12 INFORMATION TECHNOLOGY P1 FEBRUARY/MARCH 2017 MEMORANDUM MARKS: 150 This memorandum consists of 29 pages. Information Technology/P1 2 DBE/Feb. Mar. 2017 GENERAL INFORMATION:

More information

Introduction to the DLL for the USB Interface Board K8061

Introduction to the DLL for the USB Interface Board K8061 K8061.DLL 1 Introduction to the DLL for the USB Interface Board K8061 The K8061 interface board has 8 digital input channels and 8 digital output channels. In addition, there are 8 analogue inputs, 8 analogue

More information

APPLICATION NOTE: KONSTANTER LSP32K Interface Protocol

APPLICATION NOTE: KONSTANTER LSP32K Interface Protocol APPLICATION NOTE: KONSTANTER LSP32K Interface Protocol 1 Interface Type At the DB9 connector the LSP32K Power Supply device offers a serial data interface with TTL logic level for remote control and readout

More information

Использование ассиметричных алгоритмов криптографического преобразования информации в приложениях Windows

Использование ассиметричных алгоритмов криптографического преобразования информации в приложениях Windows Государственное образовательное учреждение высшего профессионального образования «Петербургский государственный университет путей сообщения» Кафедра «Информационные и вычислительные системы» Лабораторная

More information

NATIONAL SENIOR CERTIFICATE GRADE 12

NATIONAL SENIOR CERTIFICATE GRADE 12 NATIONAL SENIOR CERTIFICATE GRADE 12 INFORMATION TECHNOLOGY P1 NOVEMBER 2014 MEMORANDUM MARKS: 150 This memorandum consists of 28 pages. Information Technology/P1 2 DBE/November 2014 GENERAL INFORMATION:

More information

Image. uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls ;

Image. uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls ; B 71 11 Image Image Image Image 11.1 11.1.1 Amida AmidaU.pas AmidaP.dpr 11.1.2 Form Name FormAmida Caption Position poscreencenter HorzScrollBar.Visible False VertScrollBar.Visible False 11.1.3 11.2 Image

More information

GRADE 11 NOVEMBER 2012 INFORMATION TECHNOLOGY P1 INLIGTINGSTEGNOLOGIE V1 MEMORANDUM

GRADE 11 NOVEMBER 2012 INFORMATION TECHNOLOGY P1 INLIGTINGSTEGNOLOGIE V1 MEMORANDUM Province of the EASTERN CAPE EDUCATION NATIONAL SENIOR CERTIFICATE GRADE 11 NOVEMBER 2012 INFORMATION TECHNOLOGY P1 INLIGTINGSTEGNOLOGIE V1 MEMORANDUM MARKS/PUNTE: 120 This memorandum consists of 10 pages.

More information

NATIONAL SENIOR CERTIFICATE GRADE12

NATIONAL SENIOR CERTIFICATE GRADE12 NATIONAL SENIOR CERTIFICATE GRADE12 INFORMATION TECHNOLOGY P1 NOVEMBER 2016 MEMORANDUM MARKS: 150 This memorandum consists of 32 pages. Information Technology/P1 2 DBE/November 2016 GENERAL INFORMATION:

More information

NATIONAL SENIOR CERTIFICATE GRADE12

NATIONAL SENIOR CERTIFICATE GRADE12 NATIONAL SENIOR CERTIFICATE GRADE12 INFORMATION TECHNOLOGY P1 NOVEMBER 2015 MEMORANDUM MARKS: 150 This memorandum consists of 32 pages. Information Technology/P1 2 DBE/November 2015 GENERAL INFORMATION:

More information

unit Unit3; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

unit Unit3; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, unit Unit3; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, CPort, LPComponent, SLCommonGen, SLSignalGen, Menus, SLComponentCollection, LPDrawLayers,

More information

GRADE 12 SEPTEMBER 2012 INFORMATION TECHNOLOGY P1 MEMORANDUM

GRADE 12 SEPTEMBER 2012 INFORMATION TECHNOLOGY P1 MEMORANDUM Province of the EASTERN CAPE EDUCATION NATIONAL SENIOR CERTIFICATE GRADE 12 SEPTEMBER 2012 INFORMATION TECHNOLOGY P1 MEMORANDUM MARKS: 120 This memorandum consists of 11 pages. 2 INFORMATION TECHNOLOGY

More information

&'()*+,-./0&(1& $ :;

&'()*+,-./0&(1& $ :; &'()*+,-./0&(1& $234567859:; raek@etteam.com %!"# $%# &#$ ' (!) * %#+,-./0$1"# 22(3 45416 (! 57 5 71 " *7 *7 ( 89:9-,- 8;:< 16 *! =)5> 7# &$%# 45?"16 * @! (! 5 *) 8,:A;B9- C;D.E

More information

DELPHI FOR ELECTRONIC ENGINEERS. Part 2 Programming a calculator COURSE

DELPHI FOR ELECTRONIC ENGINEERS. Part 2 Programming a calculator COURSE COURSE DELPHI FOR ELECTRONIC ENGINEERS Part 2 Programming a calculator Herman Bulle with thanks to Anton Vogelaar In the first instalment of this series, we introduced the Delphi programming environment

More information

judul : dump mysql with delphi - opensource

judul : dump mysql with delphi - opensource judul : dump mysql with delphi - opensource header : hmm...ini sebenernya dah pernah tak tanyain dalam thread tapi lom ada jawaban yang memuaskan, aq coba ekplor terus dan akhirnya 3 bulan yang lalu bisa

More information

LAMPIRAN LIST PROGRAM

LAMPIRAN LIST PROGRAM LAMPIRAN LIST PROGRAM 1. Modules Public conn As New ADODB.Connection Public rstb_pendekatan As ADODB.Recordset Public rstb_solusi As ADODB.Recordset Public rstb_alasan As ADODB.Recordset Public rstb_pilihan

More information

Delphi Generics.Collections

Delphi Generics.Collections Delphi Generics.Collections Copyright(C) 2008 Embarcadero Technologies, Inc. All Rights Reserved. Delphi Generics.Collections Table of Contents Generics.Collections.TCollectionNotification 1 Generics.Collections.TCollectionNotifyEvent

More information

Visitor Management System

Visitor Management System WWW.VALLINME.COM Visitor Management System Ver 1.0 Mohd Noor Azam 18-03-2015 [Type the abstract of the document here. The abstract is typically a short summary of the contents of the document. Type the

More information

Kada se pokrene forma da bude plave boje. Dugme Crtaj krugove da iscrtava slučajan broj N krugova istog poluprečnika r (1/4 visine forme) čiji su

Kada se pokrene forma da bude plave boje. Dugme Crtaj krugove da iscrtava slučajan broj N krugova istog poluprečnika r (1/4 visine forme) čiji su Kada se pokrene forma da bude plave boje. Dugme Crtaj krugove da iscrtava slučajan broj N krugova istog poluprečnika r (1/4 visine forme) čiji su centri na neiscrtanom krugu poluprečnika r. Dugme Boji

More information

Send to: MM Irfan Subakti CC to Muhammad Ryanda Nugraha M with the. IF184401_DAA(F)_MID_NRP_Name.

Send to: MM Irfan Subakti CC to Muhammad Ryanda Nugraha M with the. IF184401_DAA(F)_MID_NRP_Name. IF184401 Design & Analysis of Algorithms (F) Midterm Exam Starting date: 9 March 2019 Deadline: 16 March 2019, 23:59 WIB. Exam type: Open Send to: MM Irfan Subakti CC to Muhammad Ryanda

More information

NEAR EAST UNIVERSI FACULTY OF ECONOMICS AND ADMINISTRATIVE SCIENCES DEPARTMENT OF COMPUTER INFORMATION SYSTEMS

NEAR EAST UNIVERSI FACULTY OF ECONOMICS AND ADMINISTRATIVE SCIENCES DEPARTMENT OF COMPUTER INFORMATION SYSTEMS NEAR EAST UNIVERSI FACULTY OF ECONOMICS AND ADMINISTRATIVE SCIENCES DEPARTMENT OF COMPUTER INFORMATION SYSTEMS 2007/2008 FALL TERM CIS 200 (Graduation Project) Film&Music Center Automation System Submitted

More information

LAMPIRAN A : LISTING PROGRAM

LAMPIRAN A : LISTING PROGRAM LAMPIRAN A : LISTING PROGRAM 1. frmmenu.frm Dim CN As Connection Dim rshapus As Recordset Private Sub DfaHasil_Click() Call frmlap.cetak Private Sub Form_Load() Set CN = New ADODB.Connection CN.ConnectionString

More information

NATIONAL SENIOR CERTIFICATE GRADE 12

NATIONAL SENIOR CERTIFICATE GRADE 12 NATIONAL SENIOR CERTIFICATE GRADE 12 INFORMATION TECHNOLOGY P1 FEBRUARY/MARCH 2015 MEMORANDUM MARKS: 150 This memorandum consists of 32 pages. Information Technology/P1 2 DBE/Feb. Mar. 2015 GENERAL INFORMATION:

More information

Windows. mine sweeper Jirai JiraiU.pas JiraiP.dpr. Form Name FormJirai Caption Position podesktopcenter 16.3

Windows. mine sweeper Jirai JiraiU.pas JiraiP.dpr. Form Name FormJirai Caption Position podesktopcenter 16.3 B 103 16 Windows mine sweeper 16.1 n 16.2 Jirai JiraiU.pas JiraiP.dpr Form Name FormJirai Caption Position podesktopcenter 16.3 3 B 104 16.3.1 RadioGroup Algn altop Name RadioGroupSize Caption Columns

More information

Jaringan Komputer (IF8505) Pengamanan jaringan komputer. Cryptography

Jaringan Komputer (IF8505) Pengamanan jaringan komputer. Cryptography Jaringan Komputer (IF8505) Pengamanan jaringan komputer Cryptography Introduction to Cryptography Substitution Ciphers Transposition Ciphers One-Time Pads Two Fundamental Cryptographic Principles Intro

More information

LAMPIRAN A RANGKAIAN SKEMATIK PERANGKAT KERAS

LAMPIRAN A RANGKAIAN SKEMATIK PERANGKAT KERAS LAMPIRAN A RANGKAIAN SKEMATIK PERANGKAT KERAS Instrumentation Amplifier, G=749 +9V 3 5 8 6 1 AD620AN 30K 22K HPF, G=31 HPF, G=2.05-23 5 +9V +9V 1K 8 1K 8 2 2 6 6 3 3 8.2 nf 1 8.2nF 1 5 OP07 5 OP07 220K

More information

LISTING PROGRAM. mainform.vb A-1. Universitas Sumatera Utara

LISTING PROGRAM. mainform.vb A-1. Universitas Sumatera Utara A-1 LISTING PROGRAM mainform.vb Imports System.IO Public Class mainform Private Sub mainform_load(byval sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load enkripsirb.checked = True

More information

var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin ListBox1.Items.LoadFromFile('d:\brojevi.

var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin ListBox1.Items.LoadFromFile('d:\brojevi. 1 PANEL komponenta kontejnerska, slična GropBox. Roditeljska komponenta za komp. postavljene na nju. Zajedno se pomeraju. Caption svojstvo za naziv; Alighment pomera svojstvo Caption levo i desno; Align

More information

Manual Pengguna. PCN Online Service Fulfillment System

Manual Pengguna. PCN Online Service Fulfillment System System 1 Subjek Muka Surat 1) CARTA ALIR SISTEM 2 2) PERMOHONAN OLEH AGENSI 3 3) PENGESAHAN PERMOHONAN OLEH MAMPU 8 4) LAMPIRAN 13 2 Carta alir sistem 3 PERMOHONAN OLEH AGENSI 4 Membuat permohonan baru

More information

12.2 Mixing HLA and MASM/Gas Code in the Same Program In-Line (MASM/Gas) Assembly Code in Your HLA Programs

12.2 Mixing HLA and MASM/Gas Code in the Same Program In-Line (MASM/Gas) Assembly Code in Your HLA Programs 12.1 Chapter Overview Most assembly language code doesn t appear in a stand-alone assembly language program. Instead, most assembly code is actually part of a library package that programs written in a

More information

Interdisciplinary relations in teaching of programming

Interdisciplinary relations in teaching of programming Interdisciplinary relations in teaching of programming VLADIMÍR JEHLIČKA Department of Informatics Faculty of Education University of Hradec Králové Rokitanského 62, 500 03 Hradec Králové 3 CZECH REPUBLIC

More information

JABATAN KIMIA Kategori Arahan Kerja

JABATAN KIMIA Kategori Arahan Kerja Mukasurat: 1 daripada 10 1. TUJUAN Tujuan prosedur ini ditubuhkan adalah untuk memberikan arahan yang jelas bagi langkah atau tatacara bagaimana menjalankan analisis sampel menggunakan peralatan JEOL NMR

More information

1. Threats bermaksud ancaman, atau lebih dikenali sebagai malware (malicious

1. Threats bermaksud ancaman, atau lebih dikenali sebagai malware (malicious Definisi Threats Dan Backup 1. Threats bermaksud ancaman, atau lebih dikenali sebagai malware (malicious software), yang merupakan sejenis perisian yang berniat jahat dan dengki yang bertujuan mengganggu,

More information

PANDUAN PENGGUNA (PENTADBIR SYSTEM/SYSTEM ADMINISTRATOR) (INFOTECH, BPPF DAN POLIS

PANDUAN PENGGUNA (PENTADBIR SYSTEM/SYSTEM ADMINISTRATOR) (INFOTECH, BPPF DAN POLIS Classroom Reservation User Manual (HEA) PANDUAN PENGGUNA (PENTADBIR SYSTEM/SYSTEM ADMINISTRATOR) (INFOTECH, BPPF DAN POLIS Table of Contents CLASSROOM RESERVATION MANAGEMENT SYSTEM - APLIKASI... 2 Apa

More information

NATIONAL SENIOR CERTIFICATE GRADE 12

NATIONAL SENIOR CERTIFICATE GRADE 12 NATIONAL SENIOR CERTIFICATE GRADE 12 INFORMATION TECHNOLOGY P1 NOVEMBER 2014 MARKS: 150 TIME: 3 hours This question paper consists of 22 pages. Information Technology/P1 2 DBE/November 2014 NSC INSTRUCTIONS

More information

UNIT Files. Procedure/Functionand Other Declarations (CONST, TYPE, VAR) can be stored under different Object Pascal Files (Library).

UNIT Files. Procedure/Functionand Other Declarations (CONST, TYPE, VAR) can be stored under different Object Pascal Files (Library). Basics of Language UNIT Files Basics of Language UNIT Files UNIT Files Procedure/Functionand Other Declarations (CONST, TYPE, VAR) can be stored under different Object Pascal Files (Library). You can reduce

More information

ssk 2023 asas komunikasi dan rangkaian TOPIK 4.0 PENGALAMATAN RANGKAIAN Minggu 11

ssk 2023 asas komunikasi dan rangkaian TOPIK 4.0 PENGALAMATAN RANGKAIAN Minggu 11 ssk 2023 asas komunikasi dan rangkaian TOPIK 4.0 PENGALAMATAN RANGKAIAN Minggu 11 PENILAIAN & KULIAH Kuliah Tugasan Ujian Teori Ujian Amali Isi kandungan 4.8 Menunjukkan asas pengiraan o Subnet Mask o

More information

LAMPIRAN A PROGRAM FLOWSTONE

LAMPIRAN A PROGRAM FLOWSTONE LAMPIRAN A PROGRAM FLOWSTONE A-1 Tampilan GUI pada FlowStone A-2 Program Tambahan yang Dibuat Untuk Membaca Frekuensi A-3 Program Tambahan yang Dibuat Untuk Menyimpan Data A-4 LAMPIRAN B PROGRAM VISUAL

More information

PANDUAN PENGGUNA (PENSYARAH)

PANDUAN PENGGUNA (PENSYARAH) Classroom Reservation User Manual (HEA) PANDUAN PENGGUNA (PENSYARAH) Table of Contents CLASSROOM RESERVATION MANAGEMENT SYSTEM - APLIKASI... 2 Apa itu CRMS?... 2 CRMS Feature Summary... 3 CRMS LOGIN...

More information

A-1 LAMPIRAN A LISTING PROGRAM. Kode Program Form Main: Universitas Sumatera Utara

A-1 LAMPIRAN A LISTING PROGRAM. Kode Program Form Main: Universitas Sumatera Utara A-1 LAMPIRAN A A LISTING PROGRAM Kode Program Form Main: #Region Project Attributes #ApplicationLabel: Samuel Panjaitan #VersionCode: 1 #VersionName: #SupportedOrientations: portrait #CanInstallToExternalStorage:

More information

PANDUAN PENGGUNA (SUPPLIER) e-purchase ORDER FOR SERVICES

PANDUAN PENGGUNA (SUPPLIER) e-purchase ORDER FOR SERVICES PANDUAN PENGGUNA (SUPPLIER) e-purchase ORDER FOR SERVICES SUPPLIER RELATIONSHIP MANAGEMENT SUPPLY CHAIN MANAGEMENT SYSTEM (SCMS) DISEDIAKAN OLEH: UNIT SUPPLY CHAIN MANAGEMENT (SCM) JABATAN SOURCING CONTROLLER

More information

S1 Teknik Telekomunikasi Fakultas Teknik Elektro. Kriptografi Simetris. KEAMANAN JARINGAN TTH3K3 Kur /2018

S1 Teknik Telekomunikasi Fakultas Teknik Elektro. Kriptografi Simetris. KEAMANAN JARINGAN TTH3K3 Kur /2018 S1 Teknik Telekomunikasi Fakultas Teknik Elektro Kriptografi Simetris KEAMANAN JARINGAN TTH3K3 Kur. 2016 2017/2018 Outline Terminologi Kripto: pesan, cipher, kunci, enkripsi, dekripsi, dan teknik substitusi

More information

MesuTher.dproj 07/05/ :56:44

MesuTher.dproj 07/05/ :56:44 MesuTher.dproj 07/05/2011 19:56:44 Page 1 sur 1 1: library MesuTher; 2: 3: uses 4: Windows, 5: Messages, 6: Classes, 7: Dialogs, 8: Forms, 9: SysUtils, 10: UTherElec in 'UTherElec.pas'; 11: 12: {$R MesuTher.res}

More information

LAMPIRAN. Universitas Sumatera Utara

LAMPIRAN. Universitas Sumatera Utara 61 LAMPIRAN 61 Listing Program Form 1 ( Barang ) Dim CnSuzuya As ADODB.Connection Dim CommBar As ADODB.Command Dim rsbar As ADODB.Recordset Dim StrSql As String Dim psn As Byte Private Sub Form_Load()

More information

(1) Trump (1) Trump (2) (1) Trump ExampleU ExampleP (2) Caption. TrumpU (2) Caption. (3) Image FormTrump. Top 0 Left 0.

(1) Trump (1) Trump (2) (1) Trump ExampleU ExampleP (2) Caption. TrumpU (2) Caption. (3) Image FormTrump. Top 0 Left 0. B 114 18 (1) 18.1 52 54 Trump http://www.ss.u-tokai.ac.jp/~ooya/jugyou/joronb/trumpbmp.exe (1) (2) Trump 18.2 (1) Trump ExampleU ExampleP (2) Name Caption FormMain 18.3 (1) TrumpU (2) Name Caption FormTrump

More information

SENIOR CERTIFICATE EXAMINATION

SENIOR CERTIFICATE EXAMINATION SENIOR CERTIFICATE EXAMINATION INFORMATION TECHNOLOGY P1 2015 MARKS: 150 TIME: 3 hours This question paper consists of 23 pages. Information Technology/P1 2 DBE/2015 SCE INSTRUCTIONS AND INFORMATION 1.

More information

Tutorial, Source code, Request Program Visual Basic

Tutorial, Source code, Request Program Visual Basic Tutorial, Source code, Request Program Visual Basic Oleh : Moh. A Azis Membuat Form Data Barang Program Persediaan Barang Form Data Barang digunakan untuk menyimpan data barang dan memberikan info mengenai

More information

NATIONAL SENIOR CERTIFICATE GRADE 12

NATIONAL SENIOR CERTIFICATE GRADE 12 NATIONAL SENIOR CERTIFICATE GRADE 12 INFORMATION TECHNOLOGY P1 FEBRUARY/MARCH 2016 MARKS: 150 TIME: 3 hours This question paper consists of 21 pages. Information Technology/P1 2 DBE/Feb. Mar. 2016 NSC

More information

PROGRAM BASCOM AVR. ' inisialisasi '

PROGRAM BASCOM AVR. ' inisialisasi ' PROGRAM BASCOM AVR '--------------------------------------- inisialisasi '----------------------- $prog &HFF, &HC4, &HD9, &H00 ' generated. Take care that the chip supports all fuse bytes. $regfile = "m8def.dat"

More information

12.2 Mixing HLA and MASM/Gas Code in the Same Program In-Line (MASM/Gas) Assembly Code in Your HLA Programs

12.2 Mixing HLA and MASM/Gas Code in the Same Program In-Line (MASM/Gas) Assembly Code in Your HLA Programs Mixed Language Programming Mixed Language Programming Chapter Twelve 12.1 Chapter Overview Most assembly language code doesn t appear in a stand-alone assembly language program. Instead, most assembly

More information

End Sub. Sub Kunci() Dim i As Integer For i = 0 To 4 Txtfield(i).Locked = True Next i grddatagrid.enabled = False End Sub

End Sub. Sub Kunci() Dim i As Integer For i = 0 To 4 Txtfield(i).Locked = True Next i grddatagrid.enabled = False End Sub Source Aplikasi Sistem Informasi Akademik GENERAL Dim db As Connection Dim WithEvents adoprimaryrs1 As Recordset Dim WithEvents adoprimaryrs2 As Recordset Dim WithEvents rscaridata As Recordset Dim cekid

More information

ӨЗБЕКСТАН РЕСПУБЛИКАСЫ ҲАЛЫҚ БИЛИМЛЕНДИРИӮ МИНИСТРЛИГИ ӘЖИНИЯЗ АТЫНДАҒЫ НӨКИС МӘМЛЕКЕТЛИК ПЕДАГОГИКА ИНСТИТУТЫ ФИЗИКА-МАТЕМАТИКА ФАКУЛЬТЕТИ

ӨЗБЕКСТАН РЕСПУБЛИКАСЫ ҲАЛЫҚ БИЛИМЛЕНДИРИӮ МИНИСТРЛИГИ ӘЖИНИЯЗ АТЫНДАҒЫ НӨКИС МӘМЛЕКЕТЛИК ПЕДАГОГИКА ИНСТИТУТЫ ФИЗИКА-МАТЕМАТИКА ФАКУЛЬТЕТИ ӨЗБЕКСТАН РЕСПУБЛИКАСЫ ҲАЛЫҚ БИЛИМЛЕНДИРИӮ МИНИСТРЛИГИ ӘЖИНИЯЗ АТЫНДАҒЫ НӨКИС МӘМЛЕКЕТЛИК ПЕДАГОГИКА ИНСТИТУТЫ ФИЗИКА-МАТЕМАТИКА ФАКУЛЬТЕТИ ИНФОРМАТИКАНЫ ОҚЫТЫӮ МЕТОДИКАСЫ ТӘЛИМ БАҒДАРЫ КУРС ЖУМЫСЫ ТЕМАСЫ:

More information

Pengenalan Sistem Maklumat Dalam Pendidikan

Pengenalan Sistem Maklumat Dalam Pendidikan Pengenalan Sistem Maklumat Dalam Pendidikan 1 RELATIONSHIP & QUERY DALAM MICROSOFT ACCESS Kandungan Definisi Relationship (Hubungan) Jenis Relationship Membina Relationship Definisi Query dan Fungsi Query

More information

CLOUD COMPUTING ADOPTION IN BANKING SYSTEM (UTM) IN TERMS OF CUSTOMERS PERSPECTIVES SHAHLA ASADI

CLOUD COMPUTING ADOPTION IN BANKING SYSTEM (UTM) IN TERMS OF CUSTOMERS PERSPECTIVES SHAHLA ASADI CLOUD COMPUTING ADOPTION IN BANKING SYSTEM (UTM) IN TERMS OF CUSTOMERS PERSPECTIVES SHAHLA ASADI A dissertation submitted in partial fulfillment of the requirements for the award of the degree of Master

More information

Object Pascal Language Guide

Object Pascal Language Guide Object Pascal Language Guide Borland Object Pascal Borland Software Corporation 100 Enterprise Way, Scotts Valley, CA 95066-3249 www.borland.com Borland Software Corporation may have patents and/or pending

More information

Semasa buku ini ditulis XAMPP mengandungi empat versi:

Semasa buku ini ditulis XAMPP mengandungi empat versi: Lab 1 PEMASANGAN PELAYAN WEB XAMPP 1.0 Pengenalan Di dalam topik ini kita akan menggunakan pelayan web yang berasaskan sumber terbuka XAMPP Windows 1.8.0. Kenapa Pelayan Web Xampp digunakan kerana bukannya

More information

ICT SPM 2011 SUGGESTION ANSWER. Section A

ICT SPM 2011 SUGGESTION ANSWER. Section A ICT SPM 2011 SUGGESTION ANSWER Section A NO SOALAN 1 i Computer ethic / ethic ii Computer law / law 2 ii 4 iv 2 3 Output 4 True 5 Gigabyte / GB 6 i Operating ii Application 7 B / D D / B 8 B 9 A 10 i Radio

More information

DAFTAR ISI ABSTRAK... 1 KATA PENGANTAR...ERROR! BOOKMARK NOT DEFINED. UCAPAN TERIMAKASIH...ERROR! BOOKMARK NOT DEFINED. DAFTAR ISI...

DAFTAR ISI ABSTRAK... 1 KATA PENGANTAR...ERROR! BOOKMARK NOT DEFINED. UCAPAN TERIMAKASIH...ERROR! BOOKMARK NOT DEFINED. DAFTAR ISI... ABSTRAK Perkembangan teknologi scanner yang berkembang begitu pesat memunculkan ide yang menjadi dasar konsep tugas akhir ini. Pada awalnya scanner digunakan untuk membaca gambar sehingga dapat diolah

More information

Faculty of Engineering Student Number:

Faculty of Engineering Student Number: Philadelphia University Student Name: Faculty of Engineering Student Number: Dept. of Computer Engineering Final Exam, Second Semester: 2013/2014 Course Title: Microprocessors Date: 08/06/2014 Course No:

More information

NEAR EAST UNIVERSITY. Faculty of Engineering. Department of Computer Engineering TIME TABLE DESIGN: DELPHI APPLICATION. Graduation Project COM-400

NEAR EAST UNIVERSITY. Faculty of Engineering. Department of Computer Engineering TIME TABLE DESIGN: DELPHI APPLICATION. Graduation Project COM-400 ) NEAR EAST UNIVERSITY,' Faculty of Engineering Department of Computer Engineering TIME TABLE DESIGN: DELPHI APPLICATION Graduation Project COM-400 Student: Mamun Ali Khamis (20010702) Supervisor: Ass.Prof.Dr.

More information

TEKNOLOGI, GADJET & KEIBUBAPAAN

TEKNOLOGI, GADJET & KEIBUBAPAAN TEKNOLOGI, GADJET & KEIBUBAPAAN Kandungan YouTube Google Chrome Android Device Manager Google Keep Call recorder KeePassDroid K9 protection TeamViewer Zulkifli Alang Mahat A. YouTube 1. Klik apps youtube

More information

COMBINING TABLES. Akademi Audit Negara. CAATs ASAS ACL / 1

COMBINING TABLES. Akademi Audit Negara. CAATs ASAS ACL / 1 COMBINING TABLES CAATs ASAS ACL / 1 OBJEKTIF MODUL Mempelajari kaedah menggabung dan menghubungkan dua atau lebih table bagi mencapai objektif Audit. Mempelajari kaedah menggunakan maklumat yang sedia

More information

Principles of Computer Science

Principles of Computer Science Principles of Computer Science Lecture 2 Dr. Horia V. Corcalciuc Horia Hulubei National Institute for R&D in Physics and Nuclear Engineering (IFIN-HH) January 27, 2016 Loops: do-while do-while loops do

More information

ISU DAN CABARAN PELAKSANAAN SISTEM PENGURUSAN KESELAMATAN MAKLUMAT (ISMS) 15 Jun 2016 Dewan Taklimat Serdang

ISU DAN CABARAN PELAKSANAAN SISTEM PENGURUSAN KESELAMATAN MAKLUMAT (ISMS) 15 Jun 2016 Dewan Taklimat Serdang ISU DAN CABARAN PELAKSANAAN SISTEM PENGURUSAN KESELAMATAN MAKLUMAT (ISMS) 15 Jun 2016 Dewan Taklimat Serdang 1 TARIKH AUDIT Audit Dalaman Sistem Pengurusan Keselamatan Maklumat (ISMS) Universiti Putra

More information

DMX-Dongle II Win16, Win32 & Dos Developer s Guide

DMX-Dongle II Win16, Win32 & Dos Developer s Guide DMX-Dongle II Win16, Win32 & Dos Developer s Guide Artistic Licence (UK) Ltd. Manual Revision V1.8 Firmware Revision 17, 20 2 C O N T E N T S Introduction...5 DongleSetErrorFlag... 12 Quick Start...5 DongleGetErrorFlag...

More information

Modbus Server. ARSoft International

Modbus Server. ARSoft International Modbus Server ARSoft International Description The ModBus server allows: The cyclic or acyclique interrogation of equipments connected to the serial comport COM1 to COM10. Up to 115200 Bauds. The communication

More information

PERU BAHAN PERKHIDMATAN KREDIT DAN PERBANKAN ARAHAN KERJA UNIT KOMPUTER. Tatacara Proses AGM03. BPKP/KJAK-104 Bilangan Semakan : 0 Tarikh :

PERU BAHAN PERKHIDMATAN KREDIT DAN PERBANKAN ARAHAN KERJA UNIT KOMPUTER. Tatacara Proses AGM03. BPKP/KJAK-104 Bilangan Semakan : 0 Tarikh : ARAHAN KERJA UNIT KOMPUTER Tatacara Proses AGM03 BPKP/KJAK-104 Bilangan Semakan : 0 Tarikh : 30.09.13 Disediakan oleh :- Disahkan oleh ;- Pengurus PERU BAHAN Ubahan Muka surat Tarikh Keterangan Diluluskan

More information

INSTRUCTION: This section consists of FOUR (4) structured questions. Answer ALL questions.

INSTRUCTION: This section consists of FOUR (4) structured questions. Answer ALL questions. SECTION B : 60 MARKS BAHAGIAN B : 60 MARKAH INSTRUCTION: This section consists of FOUR (4) structured questions. Answer ALL questions. ARAHAN: Bahagian ini mengandungi EMPAT (4) soalan berstruktur. Jawab

More information

LAMPIRAN LISTING PROGRAM

LAMPIRAN LISTING PROGRAM LAMPIRAN LISTING PROGRAM Imports System Imports System.IO Imports System.Math Public Class frmutama Dim dicari As DirectoryInfo Dim flpath As String, srcpath As String Dim asnode As Double, dsnode As Double,

More information

CS313D: ADVANCED PROGRAMMING LANGUAGE

CS313D: ADVANCED PROGRAMMING LANGUAGE CS313D: ADVANCED PROGRAMMING LANGUAGE Computer Science department Lecture 2 : C# Language Basics Lecture Contents 2 The C# language First program Variables and constants Input/output Expressions and casting

More information

The scripting system handles two types of components: Visual and Non-visual components.

The scripting system handles two types of components: Visual and Non-visual components. Forms and Components Old Content - visit altium.com/documentation Modified by on 13-Sep-2017 Parent page: DelphiScript Overview of Graphical Components The scripting system handles two types of components:

More information

FUZZY NEURAL NETWORKS WITH GENETIC ALGORITHM-BASED LEARNING METHOD M. REZA MASHINCHI UNIVERSITI TEKNOLOGI MALAYSIA

FUZZY NEURAL NETWORKS WITH GENETIC ALGORITHM-BASED LEARNING METHOD M. REZA MASHINCHI UNIVERSITI TEKNOLOGI MALAYSIA FUZZY NEURAL NETWORKS WITH GENETIC ALGORITHM-BASED LEARNING METHOD M. REZA MASHINCHI UNIVERSITI TEKNOLOGI MALAYSIA FUZZY NEURAL NETWORKS WITH GENETIC ALGORITHM-BASED LEARNING METHOD M. REZA MASHINCHI A

More information

Stack -- Memory which holds register contents. Will keep the EIP of the next address after the call

Stack -- Memory which holds register contents. Will keep the EIP of the next address after the call Call without Parameter Value Transfer What are involved? ESP Stack Pointer Register Grows by 4 for EIP (return address) storage Stack -- Memory which holds register contents Will keep the EIP of the next

More information

LISTING PROGRAM. Source Code Tampilan Awal. Source Code Menu Utama

LISTING PROGRAM. Source Code Tampilan Awal. Source Code Menu Utama LISTING PROGRAM Source Code Tampilan Awal Private Sub cmdkeluar_click() MsgBox "Terima Kasih Telah Membuka Program Ini.", vbinformation, "Quick IP Ver 1.0" End Private Sub cmdmasuk_click() MenuUtama.Show

More information

INSTRUCTION: This section consists of FOUR (4) structured questions. Answer ALL questions.

INSTRUCTION: This section consists of FOUR (4) structured questions. Answer ALL questions. SECTION B: 60 MARKS BAHAGIAN B: 60 MARKAH INSTRUCTION: This section consists of FOUR (4) structured questions. Answer ALL questions. ARAHAN: Bahagian ini mengandungi EMPAT (4) soalan berstruktur. Jawab

More information

mith College Computer Science CSC231 - Assembly Week #8 Dominique Thiébaut

mith College Computer Science CSC231 - Assembly Week #8 Dominique Thiébaut mith College Computer Science CSC231 - Assembly Week #8 Dominique Thiébaut dthiebaut@smith.edu Can't Sleep https://xkcd.com/571/ Logic Design Logic Design Image from http://www.willegal.net/appleii/images/motherboard.jpg

More information

EECE.3170: Microprocessor Systems Design I Summer 2017 Homework 4 Solution

EECE.3170: Microprocessor Systems Design I Summer 2017 Homework 4 Solution 1. (40 points) Write the following subroutine in x86 assembly: Recall that: int f(int v1, int v2, int v3) { int x = v1 + v2; urn (x + v3) * (x v3); Subroutine arguments are passed on the stack, and can

More information

IV ABSTRACT In this project, the suitability of 802.11 b networks to carry real time voice traffic communication will be assessed using the Internet Protocol, where in the network the voice session have

More information

NATIONAL SENIOR CERTIFICATE GRADE 12

NATIONAL SENIOR CERTIFICATE GRADE 12 NATIONAL SENIOR CERTIFICATE GRADE 12 INFORMATION TECHNOLOGY P1 NOVEMBER 2008 MEMORANDUM The memorandum consists of 35 pages. Information Technology/P1 2 DoE/November 2008 General information: Pages 2 12

More information

1. Akses untuk koperasi adalah melalui https://apponline.skm.gov.my/userlogin.aspx.

1. Akses untuk koperasi adalah melalui https://apponline.skm.gov.my/userlogin.aspx. Pengguna Koperasi 1. Akses untuk koperasi adalah melalui https://apponline.skm.gov.my/userlogin.aspx. Belum berdaftar 2. Sila masuk ID Pengguna dan Kata Laluan dengan betul. Sekiranya pengguna masih belum

More information

Synchronization Spinlocks - Semaphores

Synchronization Spinlocks - Semaphores CS 4410 Operating Systems Synchronization Spinlocks - Semaphores Summer 2013 Cornell University 1 Today How can I synchronize the execution of multiple threads of the same process? Example Race condition

More information

Panduan Guru Maker UNO/ Arduino

Panduan Guru Maker UNO/ Arduino Panduan Guru Maker UNO/ Arduino Ditulis khas berdasarkan dokumen standard kandungan prestasi subjek Reka Bentuk Teknologi Tingkatan Dua PENDAHULUAN ISI KANDUNGAN ISI KANDUNGAN CADANGAN PENGAGIHAN MASA

More information

Part 1 The first steps

Part 1 The first steps course DELPHI FOR ELECTRONIC ENGINEERS Part 1 The first steps Detlef Overbeek & Anton Vogelaar This article is the first part in a series about programming in Delphi, which concentrates on the practical

More information

UNSTEADY AERODYNAMIC WAKE OF HELICOPTER MAIN-ROTOR-HUB ASSEMBLY ISKANDAR SHAH BIN ISHAK UNIVERSITI TEKNOLOGI MALAYSIA

UNSTEADY AERODYNAMIC WAKE OF HELICOPTER MAIN-ROTOR-HUB ASSEMBLY ISKANDAR SHAH BIN ISHAK UNIVERSITI TEKNOLOGI MALAYSIA UNSTEADY AERODYNAMIC WAKE OF HELICOPTER MAIN-ROTOR-HUB ASSEMBLY ISKANDAR SHAH BIN ISHAK UNIVERSITI TEKNOLOGI MALAYSIA UNSTEADY AERODYNAMIC WAKE OF HELICOPTER MAIN-ROTOR-HUB ASSEMBLY ISKANDAR SHAH IN ISHAK

More information

Topic 6: Code Generation

Topic 6: Code Generation Compilers 2008 Topic 6: 6.4 Conditional Instructions Status Flags Conditionals A special register exists called the FLAGS register Consists of a sequence of bits, which are set (1) or unset (0). These

More information

LISTING PROGRAM 1. Halaman Intro Opening Layer Enter Layer Exit Layer Music 2. Halaman Menu Layer Background Universitas Sumatera Utara

LISTING PROGRAM 1. Halaman Intro Opening Layer Enter Layer Exit Layer Music 2. Halaman Menu Layer Background Universitas Sumatera Utara LISTING PROGRAM 1. Halaman Intro Opening Layer Enter loadmovienum( menu.swf, 0); Layer Exit fscommand("quit","true"); Layer Music stopallsounds(); 2. Halaman Menu Layer ground Stop(); //membuat sebuah

More information