Minggu, 08 Mei 2016

Pengertian dan manfaat simulasi digital

*PENGERTIAN SIMULASI DIGITAL

Simulasi Digital dalam pembelajaran berarti pembelajaran dengan pemanfaatan teknologi informasi dan komunikasi melalui pengembangan bahan ajar berbasis web.

*Manfaat dari simulasi digital ini ***ah :

Modul 1 : Pemanfaatan Jejaring Sosial untuk Pembelajaran Edmodo

1.Memudahkan proses kegiatan belajar mengajar melalui platform Edmodo.

2.Memudahkan guru untuk memberi tugas kepada muridnya melalui platform Edmodo.

3.Memudahkan untuk belajar kelompok via Online bagi murid.

4.Guru dapat memberi materi walaupun guru sedang tugas luar melalui platform Edmodo.

5.Melakukan ujian via online lebih mudah karena tidak membutuhkan biaya lagi untuk penyewaan hosting karena  platform Edmodo ini gratis.

6.Mudahnya menggunakan platform Edmodo karena toolsnya hampir sama dengan Facebook.

7.Orang tua dapat memantau anaknya via Edmodo karena ada akses yang di sediakan oleh Edmodo untuk Orang Tua dll.

Modul 2 : Penggunaan Perangkat Komunikasi Online

1.Dapat menggunakan Perangkat Komunikasi Online untuk membantu proses belajar ataupun sharing.

2.Dapat berkomunikasi secara efektif via online dll.

3.Memberi wawasan cara menggunakan fitur Komunikasi Online yang gratis(Seperti: Google Hangout)


Modul 3 : Pembuatan Presentasi Video

1.Tahu cara membuat Presentasi yang baik dan benar.

2.Dapat mempresentasikan produknya untuk khalayak umum.

3.Dapat membuat produk yang baik, bermanfaat dan benar dll.

Modul 4 : Pembuatan Simulasi Visual

1.Bermain dengan aplikasi Blender Opensource.

2.Dapat membuat Visualisasi benda secara ri'il dalam bentuk 3 Dimensi.

3.Dapat mebuat modeling benda dalam bentuk animasi yang menarik dll.

Modul 5 : Buku Digital

1.Dapat membuat konten buku yang menarik dan bermanfaat.

2.Dapat memasukkan Video dan audio dalam buku.

3.Dapat packing buku yang menarik dan bermanfaat dll.

Pengertian Blog,fungsi dan kegunaannya

1. Definisi Blog

Web Log atau yang sering juga disebutBLOG adalah sebuah diary atau catatan-catatan pribadi yang disimpan secara online dan umumnya bersifat terbuka bagi siapa saja yang ingin membacanya. bisa juga berisi kutipan dari sumber lain yang sengaja dipublikasikan kembali dalam satu tempat.
Blog juga sama dengan situs-situs atau webyang sering Anda temui di internet. Materi dan konten merupakan kebebasan penuh dari sang pembuat blog. tentu saja sangat disarankan lebih ke arah membagi pengetahuan yang bermanfaat.

2. Fungsi dan Kegunaan Sebuah Blog

Dengan memiliki Blog, kita dapat melatih kemampuan dalam menyampaikan suatu informasi atau hal-hal yang ingin kita sampaikan kepada orang lain dengan tanpa bermaksud menggurui atau sok tahu tentang apa yang kita ketahui kepada pembaca. Dengan memiliki Blog, kita dapat memperoleh banyak ide yang didapat dari berbagai sumber yang memberikan komentar atas tulisan yang kita terbitkan diBlog yang kita buat dan akan menjadi pacuan semangat kita dalam menggali pola pikir yang kreatif dan positif tentang apa yang dapat kita lakukan dan bermanfaat bagi diri sendiri maupun bagi orang lain. Sudah banyak orang-orang yang meraih kesuksesan hanya dengan memiliki sebuah Blog, karena Blog bersifat terbuka bagi siapa saja sehingga dapat juga dijadikan sebagai sarana untuk mengembangkan bisnis mereka secara online diantara sela-sela karya tulisan yang mereka terbitkan dan disukai banyak orang yang mencari dan membacanya. Dengan Blog juga kita dapat memiliki banyak teman dari berbagai daerah dan negara yang terdapat kesamaan kaitannya dengan isi Blog yang kita buat.
Belakangan ini, fungsi sebuah Blog tidak hanya sebagai sarana membagi informasi dan kutipan yang sifatnya umum, namun lebih cenderung sebagai sarana promosi penjualan atas sebuah produk atau juga Program suatu Bisnis. Sah-sah saja, sangat disayangkan pula munculnya bermacamBlog yang mengedepankan konten kurang mendidik, ataupun konten-konten dewasa yang berpotensi memperburuk pola pikir daripada aspek mendidiknya.
Kecanggihan teknologi saat ini seharusnya mampu menjembatani keterbatasan pengetahuan bermanfaat antar sesama, jadi gunakanlah secara bijak apa yang bisa anda lakukan melalui media Blog.

Pengertian konstanta

KONSTANTA

Konstanta adalah variabel yang nilai datanya bersifat tetap dan tidak bisa diubah. Jadi konstanta adalah juga variabel bedanya adalah pada nilai yang disimpannya. Jika nilai datanya sepanjang program berjalan tidak berubahubah, maka sebuah varibel lebih baik diperlakukan sebagai konstanta. Pada sebuah kode program, biasanya nilai data dari konstanta diberikan langsung di bagian deklarasi konstanta. Sedangkan untuk variabel biasanya hanya ditentukan nama variabel dan tipe datanya tanpa isian nilai data. Aturan penamaan variabel juga berlaku untuk penamaan konstanta. Demikian juga aturan penetapan tipe data. konstanta dibagi menjadi 4:

1.konstanta integer, berupa integer biasa, integer panjang (long int) dan integer tak bertanda (unsigned integer). Nilainya dapat berupa desimal, oktal atau hexadesimal.
2. Konstanta floating point, dapat mengandung nilai pecahan, yang biasa ditulis dalam bentuk pecahan biasa maupun bentuk eksponensial dan selalu dinyatakan dalam double, kecuali jika diakhiri dengan F atau f (menyatakan konstanta float).
3.konstanta string, merupakan deretan karakter yang diawali dan diakhiri dengan tanda petik ganda (“…“). Juga dapat mengandung karakter yang menggunakan tanda \ yang disebut karakter escape (escape sequence).
4. Konstanta karakter, selalu diawali dan diakhiri dengan tanda petik tunggal (‘…’). Beberapa konstanta karakter dapat diawali dengan tanda \ (penempatannya setelah tanda petik tunggal).


Sebagai contoh, jika kita membuat program perhitungan matematik yang menggunakan nilai pi (3.14159) yang mungkin akan muncul dibanyak tempat pada kode program, kita dapat membuat pi sebagai konstanta. Penggunaan konstanta pi akan lebih memudahkan penulisan kode program dibanding harus mengetikkan nilai 3.14159 berulang-ulang

Jenis-jenis tipe data

1. Tipe data Integer / Ordinal
Tipe data ini adalah tipe data yang berupa bilangan bulat yang akan digunakan untuk operasi matematika. Ada beberapa tipe data yang termasuk integer, yaitu antara lain:

a. ShortInt : memiliki nilai range -128 sampai 127 (signed 8-bit)
b. SmallInt : memiliki nilai range antara - 32768 sampai dengan 32767 (signed 16-bit)
c. LongInt : memiliki nilai range -2147483648 sampai 2147483647 (signed 32-bit )
d. Int64 : memiliki range -263+1 sampai 263-1 (signed 64-bit)
e. Byte : memiliki nilai range 0 sampai 255 (unsigned 8-bit)
f. Word : memiliki nilai range 0 sampai 65535 (unsigned 16-bit)
g. LongWord : memiliki nilain range 0 sampai 4294967295(unsigned 32-bit )

Pada pemakaian integer type di implemetasi 16 bit maka:

a. Integer : memiliki range antara - 32768 sampai dengan 32767 (signed 16-bit)
b. Cardinal : memiliki range 0 sampai 65535 (unsigned 16-bit)

Pada pemakaian integer type di implemetasi 32 bit maka:

a. Integer : memiliki range antara -2147483648 sampai 2147483647 (signed 32-bit)
b. Cardinal : memiliki range 0 sampai 4294967295 (unsigned 32-bit)

Penulisan pada deklarasi variable:

[variable] : [type data integer];

2. Tipe data Boolean
Tipe data ini hanya terdiri dari nilai logika True dan False. Ada beberapa jenis dari tipe Boolean ini, yaitu:

a. Boolean : berukuran 1 byte (false 0, true 1)
b. ByteBool : berukuran Byte (false 0, true 255 - 8 bit)
c. Bool : berukuran Double (false 0, true -1)
d. WordBool : berukuran Word (false 0, true 65535 - 16 bit)
e. LongBool : berukuran Double (false 0, true -1)

Penulisan pada deklarasi variable:

[variable] : [type data boolean];

3. Tipe data Floating Point /Real
Tibe data ini meliputi bentuk bilangan desimal. Beberapa bentuk dari tipe data ini adalah:

a. Real : memiliki range 2.9 x 10-39 sampai 1.7 x 1038
b. Single : memiliki range 1.5 x 10-45 sampai 3.4 x 1038
c. Double : memiliki range 5.0 x 10-324 sampai 1.7 x 104392
d. Extended : memiliki range 3.6 x 10-4951 sampai 1.1 x 104392
e. Currency : memiliki range -922337203685477.5808 sampai 922337203685477.5808
f. Comp : memiliki range -263+1 sampai 263-1

Untuk currency, tipe data ini memiliki kepresisian tinggi yaitu 4 angka dibelakang koma (pembulatan bilangan real menjadi bilangan desimal dengan 4 angka dibelakang koma). Biasanya digunakan untuk satuan uang. Dan untuk comp, tipe data ini akan menyimpan nilai integer (bulat) dari nilai decimal yang masuk (melakukan pembulatan).

Penulisan pada deklarasi variable:

[variable] : [type data floating point];

4. Tipe Data Enumerated
Tipe data ini adalah berupa nilai urutan dari data yang telah dibuat.

Penulisan pada deklarasi variable:

[variable] : ( [data0],[data1],[data2] );

Masing-masing data akan diberikan nilai integer secara urut. Urutan dimulai dengan nilai urut 0.

Jika ingin melihat nilai integer dari setiap data maka dengan perintah:

ord( [data1] )

5. Tipe data Sub Range
Tipe data ini memungkinkan kita membuat range sendiri. Dengan perintah:

[variable] : [constant start]..[constant end];

contoh:

a : 5..10;

Jika kita mendeklarasikan 5 adalah a maka proses compile akan terus berjalan jika kita mendeklarasikan 15 adalah a maka proses compile tidak akan berjalan atau berhenti, sehingga terdapat error pada proses compile sehingga tidak dapat di run.

6. Tipe data String dan Character
Tipe data String adalah tipe data yang merupakan rangkaian dari huruf, angka atau symbol yang tidak mengandung harga (nilai).

Beberapa tipe data string adalah sebagai berikut:
a. ShortString : Dapat menampung 255 karakter (ANSIChar)
b. AnsiString : Dapat menampung ~231 karakter (ANSIChar)
c. WideString : Dapat menampung ~230 karakter (WideChar)
d. String : Dapat menampung 255 karakter (ANSIChar)

Tipe data Character adalah tipe data yang berkaitan dengan karakter ( huruf, angka, symbol). Ada beberapa tipe data dari Character yaitu:

a. ANSIChar : Satu karakter ANSI
b. WideChar : Satu karakter Unicode
c. Char : Sama dengan ANSIChar

Jika Anda ingin memunculkan karakter dari nomor urut, Anda dapat menggunakan perintah chr([NoUrut]). Dan untuk mengetaui no urut dari sebuah karakter, Anda dapat menuliskan perintah ord([karakter]).

Sejarah pemrograman dasar

Berikut adalah ringkasan sejarah bahasa pemrorgraman.

Sebelum 1940
Pada jaman ini terdapat bahasa pemrograman yang pertama kali muncul sebelum adanya komputer modern, artinya bahasa pemrograman lebih tua dari komputer itu sendiri. Pada awal kemunculannya, bahasa pemrograman masih dalam bentuk kode-kode bahasa mesin. Bahasa mesin merupakan bahasa yang terdiri atas kode-kode mesin dan hanya dapat diinterpretasikan langsung oleh mesin komputer. Bahasa mesin ini tergolong bahasa tingkat rendah, karena hanya berupa kode 0 dan 1 seperti disampaikan pada bagian atas.

Periode 1940-an

Dengan bahasa mesin ditemukan banyak kesulitan untuk pengembangan dan perbaikan pada program yang dibuat saat itu, Tahun 1940-an komputer bertenaga listrik dibuat, dengan kecepatan yang sangat terbatas dan kapasitas memori yang mencukupi untuk programmer memprogram, kemudian terciptalah bahasa assembly (Assembly language). Bahasa assembly adalah bahasa simbol dari bahasa mesin. Setiap kode bahasa mesin memiliki simbol sendiri dalam bahasa assembly. Misalnya Move untuk memindahkan isi data, ADD untuk penjumlahan, MUL untuk perkalian, SUB untuk pengurangan, dan lain-lain. Penggunaan bahasa Asembly dirasa belum sempurna karena selain sulit untuk diimplementasikan, ternyata bahasa ini juga sulit jika sang programer ingin mengembangkan program buatannya. Pada tahun 1948, Konrad Zuse mempublikasikan sebuah paper tentang bahasa pemrograman miliknya yakni Plankalkül. Bagaimanapun, bahasa tersebut tidak digunakan pada masanya dan terisolasi terhadap perkembangan bahasa pemrograman yang lain. Beberapa bahasa pemrograman yang berkembang pada masa itu antara lain:
• Plankalkül (Konrad Zuse) – 1943
• ENIAC coding system – 1943
• C-10 – 1949
Periode tahun 1950-an sampai dengan tahun 1960-an

 

Mulai tahun 1950 dibuatlah bahasa pemrograman modern, yang turun-temurun dan tersebar luas hingga saat ini. Bahasa ini menggunakan istilah atau reserved word yang dekat dengan bahasa manusia seperti READ untuk membaca, WRITE untuk menulis dsb. Dalam perkembangannya Bahasa Tingkat Tinggi juga terdiri dari beberapa metode pemrograman, yaitu Procedural Programing dan Object Oriented Programing. Letak perbedaannya yaitu, jika pada procedural programing program dijalankan dengan menggabungkan variable, procedure-procedure yang saling keterkaitan dan berjalan berurut, sedangkan pada OOP seluruh task dijalankan berdasarkan kedalam object.
• FORTRAN (1955), the “FORmula TRANslator”, ditemukan oleh John W. Backus dll.
• LISP, the “LISt Processor”, ditemukan oleh John McCarthy dll.
• COBOL, the COmmon Bussines Oriented Language, dibuat oleh the Short Range Commitee, dan Grace Hopper berperan sangat besar disini.

Overview:

• Regional Assembly Language – 1951• Autocode – 1952• FORTRAN – 1954• FLOW-MATIC – 1955• COMTRAN – 1957• LISP – 1958• ALGOL – 1958• COBOL – 1959• APL – 1962• SIMULA – 1962• BASIC – 1964• PL/I -1964

Periode 1967-1978: Menetapkan Paradigma Fundamental
Periode diantara tahun 60-an sampai dengan 70-an membawa pengaruh yang besar dalam perkembangan bahasa pemrograman.

 Kebanyakan dari pola bahasa pemrograman yang utama yang saat ini banyak digunakan:
• Simula, ditemukan pada akhir 60-an oleh Nygaard dan Dahl sebagai superset dari Algol 60, merupakan bahasa pemrograman pertama yang didesain untuk mendukun pemrograman berorientasi object.
• C, sebuah tahapan awal dari sistem bahsa pemrograman, yang dikembangkan oleh Dennis Ritchie dan Ken Thompson di Bell Labs antara tahun 1969 dan 1973.
• Smalltalk (pertengahan tahun 70-an) menyajikan desain ground-up yang lengkap dari sebuah bahasa yang berorientasi objek.
• Prolog, didesain pada tahun 1977 oleh Colmerauer, Roussel, and Kowalski, merupakan bahasa pemrograman logika yang pertama.
• ML membangun sebuah sistem polimorfis (ditemukan oleh Robin Miller pada tahun 1973) diatas sebuah Lisp, yang merintis bahasa pemrograman fungsional bertipe statis.
Beberapa bahasa pemrograman yang berkembang dalam periode ini termasuk:

• Pascal – 1970• Forth – 1970• C – 1970• Smaltalk – 1972• Prolog – 1972• ML – 1973• SQL – 1978

Periode 1980-an: konsolidasi, modul, performa
1980s adalah tahun dari konsolidasi relatif. C++ dikombinasikan dengan sistem programming dan berorientasi obyek. Pemerintah Amerika Serikat menstandardisasi Ada, sebuah sistem pemrograman yang bertujuan untuk digunakan para kontraktor untuk bertahan. Di Jepang dan di tempat lain, penjumlahan luas yang telah di selidiki disebut” generasi ke lima” bahasa-bahasa yang menyatukan logika pemrograman konstruksi. Masyarakat bahasa fungsional gerak ke standarisasi ML dan Cedal. Dibandingkan dengan menemukan paradigma-paradigma baru, semua pergerakan ini menekuni gagasan-gagasan yang ditemukan di dalam dekade sebelumnya.

However, one important new trend in language design was an increased focus on programming for large-scale systems through the use of modules, or large-scale organizational units of code. Modula, Ada, and ML all developed notable module systems in the 1980s. Module systems were often wedded to generic programming constructs generics being, in essence, parameterized modules (see also parametric polymorphism).

Bagaimanapun, satu kecenderungan baru di dalam disain bahasa adalah satu fokus yang ditingkatkan di pemrograman untuk sistem besar-besaran melalui penggunaan dari modul, atau kesatuan organisasi besar-besaran dari kode. Modula, Ada, dan ML semua sistem modul terkemuka yang dikembangkan pada 1980-an.

Beberapa bahasa pemrograman yang berkembang dalam periode ini termasuk:

• Ada – 1983• C++ – 1983• Eiffel – 1985• Perl – 1987• FL (Backus) – 1989

Periode 1990-an: Visual
Pada periode ini bahasa selain berorientasi objek juga sudah dikembangkan berbasi Visual sehingga semakin mudah untuk membuat program aplikasi, diawali oleh Python dan Microsoft Visual Basic 1 pada tahun 1991, Delphi yang dikembangkan dari Pascal for windows akhirnya pada tahun 1997 Visual Basic 5 diluncurkan dengan kemudahan koneksi ke database, OO Cobol sudah ditemukan dalam versi windows. Bagi kebanyakan programmer database tidak dapat dipungkiri bahwa era 1990an merupakan era yang paling produktif semenjak bahasa pemrogrammar diciptakan.
Beberapa bahasa pemrograman yang berkembang dalam periode ini termasuk

• Haskel – 1990• Python – 1991• Java – 1991• Ruby – 1993• OO Cobol• Lua – 1993• ANSI Common Lisp – 1994• JavaScript – 1995• PHP – 1995• C# – 2000• JavaFX Scrip, Live Script,• Visual Basic

Periode 2000an hingga tulisan ini dibuat
Pada saat ini ada kecenderungan para vendor bahasa pemrograman untuk menggiring programmer hanya dengan mengggunakan produk mereka untuk membuat program meski kita sadari bahwa sulit rasanya untuk membuat program yang tangguh hanya dengan satu bahasa pemrograman, hal ini tentunya dilakukan dengan tujuan kelangsungan usaha mereka, namun terlepas dari semua itu terdapat dua konsepsi besar dalam periode ini dimana kemudahan berbasis visual sudah mulai digiring ke basis internet dan mobile, dengan bermunculan webservice dan berbasis net dan a mobile flatform.

Konsep pertama yang dicermati adalah konsepsi Microsoft dimana dengan Visual Net akan menyediakan berbagai bahasa pemrograman seperti VB Net , VC++ Net, ASP NET yang di compile dengan berbagai bahasa akan tetapi berjalan pada satu sistem operasi yakni windows. (Compile any program run one system)

Konsepsi Kedua, Merupakan konsep yang terbalik dari konsep pertama yakni apa yang ditawarkan Sun Microsystem melalui produknya Java, J2ME, JDK, yakni dicompile dengan satu bahasa pemrograman (java) dan berjalan dibanyak sistem operasi. (Compile one program running any system)

Selain itu periode ini juga merupakan jamannya CMS (Content Manajemen System), lompatan pengembangan PHP Script begitu cepat, dimana untuk membuat website atau portal telah tersedia banyak template, Banyak modul-modul yang siap pakai sehingga programmer atau webmaster tidak perlu lagi mempelajari semua script html dan bahasanya, tinggal merangkai modul yang tersedia sehingga dalam beberapa hari saja sebuah web sudah dapat dibuat. Apa yang ditawarkan Mambo, PhkNuke dan Jomla saat ini sangat memudahkan para desainer web.

Beberapa bahasa pemrograman yang berkembang dalam periode ini termasuk
• Tcl/Tk,
• O’Caml,
• Ruby,
• Phyton 3.1,
• Java 6 JDK, JED, Java Beans, J2ME
• Microsoft Visual Net (VB Net, C++ Net, ASP NET) 2008
• Java Scrip Template oleh Mambo, PhpNuke, Jomla

Sejarah pandangan pertama tiga generasi

Istilah “generasi pertama” dan “generasi kedua” bahasa pemrograman tidak digunakan sebelum coining dari istilah “generasi ketiga.” Bahkan, tak satupun dari ketiga istilah yang disebutkan dalam kompendium awal bahasa pemrograman. Pengenalan generasi ketiga dari teknologi komputer bertepatan dengan penciptaan generasi baru bahasa pemrograman. Pemasaran untuk pergeseran generasi dalam mesin tidak berkorelasi dengan beberapa perubahan penting dalam apa yang disebut tingkat tinggi bahasa pemrograman, dibahas di bawah, memberikan konten teknis untuk perbedaan kedua / ketiga-generasi antara bahasa pemrograman tingkat tinggi juga, dan mengubah nama refleks bahasa assembler sebagai generasi pertama.

Generasi Kedua

Artikel utama: Generasi kedua bahasa pemrograman

Bahasa pemrograman generasi kedua, awalnya hanya disebut bahasa pemrograman tingkat tinggi , diciptakan untuk menyederhanakan beban pemrograman dengan membuat ekspresi yang lebih seperti modus normal ekspresi pemikiran yang digunakan oleh programmer. Mereka diperkenalkan pada akhir 1950-an, dengan FORTRAN mencerminkan kebutuhan programmer ilmiah, ALGOL mencerminkan upaya untuk menghasilkan tampilan standar Eropa / Amerika.

Masalah yang paling penting yang dihadapi oleh para pengembang dari tingkat kedua bahasa adalah pelanggan meyakinkan bahwa kode yang dihasilkan oleh para penyusun dilakukan dengan baik-cukup untuk membenarkan meninggalkan pemrograman assembler. Dalam pandangan skeptisisme luas tentang kemungkinan memproduksi program efisien dengan sistem pemrograman otomatis dan fakta bahwa inefisiensi tidak bisa lagi disembunyikan, para pengembang yakin bahwa jenis sistem yang mereka ada dalam pikiran akan banyak digunakan hanya jika mereka bisa menunjukkan bahwa hal itu akan menghasilkan program hampir seefisien yang tangan kode dan melakukannya pada hampir setiap pekerjaan. Compiler FORTRAN dipandang sebagai tour de force-dalam produksi berkualitas tinggi kode, bahkan termasuk “… a Monte Carlo simulasi pelaksanaannya … sehingga dapat meminimalkan transfer barang antara toko dan indeks register.”

Generasi ketiga

Artikel utama: generasi ketiga bahasa pemrograman

Pengenalan generasi ketiga dari teknologi komputer bertepatan dengan penciptaan generasi baru bahasa pemrograman. [1] Fitur penting dari generasi ketiga bahasa adalah hardware-kemerdekaan mereka, ekspresi yaitu algoritma dengan cara yang independen dari karakteristik mesin yang algoritma akan berjalan.

Beberapa atau semua dari sejumlah perkembangan lain yang terjadi pada saat yang sama dimasukkan dalam 3GLs.

Interpretasi diperkenalkan. 3GLs Beberapa disusun , proses analog dengan penciptaan dieksekusi kode mesin lengkap dari kode assembly, perbedaan adalah bahwa dalam bahasa tingkat tinggi tidak ada lagi hubungan, satu-ke-satu, atau bahkan linier antara petunjuk source code kode mesin instruksi dan. Compiler dapat menargetkan hardware yang berbeda dengan memproduksi terjemahan yang berbeda dari perintah kode sumber yang sama.

Penafsir, di sisi lain, pada dasarnya menjalankan instruksi kode sumber itu sendiri – jika seseorang menemukan sebuah “add” instruksi, ia melakukan tambahan itu sendiri, daripada keluaran instruksi tambahan akan dieksekusi kemudian. Mesin-kemerdekaan dicapai dengan memiliki interpreter yang berbeda dalam kode mesin dari platform yang ditargetkan, yaitu penafsir itu sendiri umumnya harus dikompilasi. Interpretasi bukanlah “muka” linear, tetapi model alternatif untuk kompilasi, yang terus ada di samping, dan lainnya, baru-baru ini dikembangkan, hibrida. Lisp adalah bahasa interprepreted awal.

Para 3GLs awal, seperti Fortran dan Cobol , adalahspaghetti kode , yaitu mereka memiliki gaya yang sama dari aliran kontrol sebagai assembler dan kode mesin , membuat penggunaan berat dari gotopernyataan. pemrograman terstruktur [2] diperkenalkan model di mana program itu dilihat sebagai hirarki blok bersarang daripada daftar linear instruksi. Misalnya, programmer terstruktur adalah untuk memahami sebuah loop sebagai blok kode yang diulang, bukan perintah begitu banyak diikuti oleh melompat mundur atau goto. Pemrograman terstruktur kurang tentangkekuasaan – dalam arti satu tingkat yang lebih tinggi commannd ekspansi ke berbagai tingkat rendah yang – dari keselamatan. Pemrogram berikut ini jauh kurang rentan untuk membuat kesalahan. Pembagian kode ke blok, subrutin dan modul lainnya dengan antarmuka jelas-didefinisikan juga memiliki manfaat produktivitas dalam memungkinkan programmer banyak untuk bekerja pada satu proyek. Setelah diperkenalkan (dalam ALGOL bahasa), pemrograman terstruktur dimasukkan ke dalam hampir semua bahasa, dandipasang dengan bahasa yang awalnya tidak memilikinya, seperti Fortran , dll

Struktur Blok juga dikaitkan dengan depresiasivariabel global , sumber kesalahan yang sama dengangoto . Sebaliknya, bahasa terstruktur diperkenalkanscoping leksikal dan manajemen penyimpanan otomatis dengan stack.

Fitur lain yang tingkat tinggi adalah pengembangan dari sistem tipe yang melampaui jenis data kode mesin yang mendasari, seperti string , array dancatatan .

Dimana 3GLs awal adalah tujuan khusus, (misalnya ilmu pengetahuan atau perdagangan) upaya telah dilakukan untuk menciptakan tujuan umum bahasa, seperti C dan Pascal . Sementara ini menikmati sukses besar, domain bahasa tertentu tidak menghilang.

Sebuah karakterisasi alternatif dari tiga generasi pertama

Karena setidaknya 1979, banyak penulis  telah menggunakan karakterisasi yang berbeda dari generasi bahasa pemrograman.

Generasi Pertama

Dalam kategorisasi ini, generasi pertama bahasa pemrograman mengacu pada angka kode mesin , yaitu petunjuk numerik secara langsung sesuai dengan petunjuk perangkat keras individu.

Awalnya, tidak ada penerjemah yang digunakan untukmengkompilasi atau merakit sumber assembler untuk menghasilkan kode mesin numerik. Generasi pertama instruksi pemrograman yang masuk melalui switch panel depan dari sistem komputer.

Manfaat utama dari pemrograman dalam kode mesin adalah bahwa kode pengguna menulis dapat berjalan sangat cepat dan efisien, karena secara langsung dieksekusi oleh CPU . Namun, kode mesin adalah jauh lebih sulit untuk belajar dari yang lebih tinggi bahasa pemrograman generasi, dan itu jauh lebih sulit untuk mengedit jika terjadi kesalahan. Selain itu, jika instruksi perlu ditambahkan ke dalam memori di lokasi tertentu, maka semua instruksi setelah titik penyisipan perlu dipindahkan ke membuat ruang dalam memori untuk menampung instruksi baru. Melakukannya pada panel depan dengan switch bisa sangat sulit.

Generasi Kedua

Generasi kedua bahasa pemrograman mengacu pada (simbolis) bahasa assembly . Istilah ini diciptakan untuk memberikan perbedaan dari sebelumnyabahasa kode mesin dan tingkat yang lebih tinggibahasa pemrograman generasi ketiga (3GL) sepertiFortran , COBOL dan Algol . Generasi kedua bahasa pemrograman memiliki sifat sebagai berikut:

Kode assembly simbolis dapat dibaca dan ditulis oleh seorang programmer. Untuk menjalankan pada komputer harus dikonversi ke dalam bentuk mesin yang dapat dibaca, proses yang disebut perakitan.Bahasa adalah satu-ke-satu korespondensi dengan instruksi mesin dari keluarga prosesor tertentu dan lingkungan.

Majelis bahasa kadang-kadang digunakan dalam kernel dan driver perangkat (meskipun C umumnya digunakan untuk ini di kernel modern), tetapi lebih sering menemukan penggunaan dalam pengolahan yang sangat intensif seperti game, video editing, grafis manipulasi / render.

Salah satu metode untuk membuat kode seperti ini dengan memungkinkan compiler untuk menghasilkan mesin-dioptimalkan perakitan versi bahasa fungsi tertentu. Sumber perakitan kemudian tangan-tuned, memperoleh wawasan baik brute-force dari algoritma mesin mengoptimalkan dan kemampuan intuitif optimizer manusia.

Generasi ketiga

Generasi ketiga bahasa pemrograman (3GL) awalnya disebut semua bahasa pemrograman pada tingkat yang lebih tinggi dari perakitan. Sedangkan instruksi individu dari bahasa generasi kedua dalam satu-ke-satu korespondensi dengan instruksi mesin individu (yaitu mereka yang dekat dengan domain mesin), bahasa generasi ketiga bertujuan untuk menjadi lebih dekat ke domain manusia. Instruksi beroperasi pada tingkat, lebih tinggi abstrak, lebih dekat dengan cara berpikir manusia, dan setiap instruksi individu dapat diterjemahkan ke dalam sejumlah (besar kemungkinan) mesin-tingkat instruksi. Bahasa generasi ketiga dimaksudkan untuk lebih mudah digunakan daripada bahasa generasi kedua. Dalam rangka untuk menjalankan pada komputer yang sebenarnya, kode yang ditulis dalam bahasa generasi ketiga harus dikompilasi baik secara langsung ke dalam kode mesin, atau ke perakitan, dan kemudian dirakit. Kode yang ditulis dalam bahasa generasi ketiga umumnya dapat dikompilasi untuk dijalankan pada komputer yang berbeda menggunakan berbagai arsitektur perangkat keras.

Pertama kali diperkenalkan pada akhir 1950-an,FORTRAN , ALGOL dan COBOL adalah contoh awal dari bahasa generasi ketiga.

Bahasa generasi ketiga cenderung baik seluruhnya (atau hampir seluruhnya) independen dari hardware, seperti untuk keperluan umum bahasa seperti Pascal ,Java , FORTRAN , dll, meskipun beberapa telah ditargetkan pada prosesor tertentu atau arsitektur keluarga prosesor, seperti , misalnya PL / M yang ditargetkan pada prosesor Intel, atau bahkan C , yang sebagian auto-increment dan auto-decrement idiom seperti * (c + +) berasal dari hardware PDP-11 ini yang mendukung auto-increment dan auto-decrement mode pengalamatan tidak langsung, dan di mana C pertama kali dikembangkan.

Kebanyakan “modern” bahasa ( BASIC , C , C + + , C # ,Pascal , Ada , dan Jawa ) juga generasi ketiga bahasa.

Dukungan 3GLs Banyak terstruktur pemrograman .

generasi Kemudian

Artikel utama: generasi keempat bahasa pemrograman dan kelima-generasi bahasa pemrograman

Awalnya, bahasa pemrograman semua pada tingkat yang lebih tinggi dari perakitan yang disebut “generasi ketiga”, tetapi kemudian, istilah “generasi keempat” diperkenalkan untuk mencoba membedakan (kemudian) bahasa deklaratif baru (seperti Prolog dan domain- spesifik bahasa) yang diklaim beroperasi pada tingkat yang lebih tinggi, dan dalam domain bahkan lebih dekat ke pengguna (misalnya pada tingkat bahasa alami) daripada asli, bahasa tingkat tinggi seperti imperatif Pascal , C , Algol , Fortran ,BASIC , dan lain-lain

“Generasi” klasifikasi bahasa tingkat tinggi (generasi ke-3 dan kemudian) tidak pernah sepenuhnya tepat dan kemudian mungkin ditinggalkan, dengan klasifikasi yang lebih tepat mendapatkan penggunaan umum, seperti object-oriented , deklaratif dan fungsional. C memunculkan C + + dan kemudian Javadan C # , Lisp untuk CLOS , Ada ke Ada 2.012 , dan bahkan COBOL untuk COBOL2002 , dan bahasa baru telah muncul dalam “generasi” juga

Minggu, 01 Mei 2016

Pengertian algoritma

Algoritma adalah Sistim kerja komputer memiliki brainware, hardware, dan software. Tanpa salah satu dari ketiga sistim tersebut, komputer tidak akan berguna. Kita akan lebih fokus pada softwarekomputer. Software terbangun atas susunan program (silahkan baca mengenai pengertian program) dan syntax (cara penulisan/pembuatan program). Untuk menyusun program atau  syntax, diperlukannya langkah-langkah yang sistematis dan logis untuk dapat menyelesaikan masalah atau tujuan dalam proses pembuatan suatu software. Maka,Algoritma berperan penting dalam penyusunan program atau syntax  tersebut.

Pengertian Algoritma adalah susunan yang logis dan sistematis untuk memecahkan suatu masalah atau untuk mencapai tujuan tertentu. Dalam dunia komputer, Algoritma sangat berperan penting dalam pembangunan suatu software. Dalam dunia sehari-hari, mungkin tanpa kita sadari Algoritma telah masuk dalam kehidupan kita.

Pengertian Algoritma adalah susunan yang logis dan sistematis untuk memecahkan suatu masalah atau untuk mencapai tujuan tertentu. Dalam dunia komputer, Algoritma sangat berperan penting dalam pembangunan suatu software. Dalam dunia sehari-hari, mungkin tanpa kita sadari Algoritma telah masuk dalam kehidupan kita.

Algoritma berbeda dengan Logaritma. Logaritma merupakan operasi Matematika yang merupakan kebalikan dari eksponen atau pemangkatan. Contoh Logaritma seperti bc= a ditulis sebagai blog a = c (b disebut basis).

Contoh nyata Algoritma dalam kehidupan sehari-hari adalah "Cara Membuat Mie Instan". Berikut langkah-langkah cara membuat mie instan:

Ambil goreng di dalam lemari yang terletak di dapur.
Siapkan peralatan yang diperlukan seperti panci, gunting, piring, serta sendok dan garpu.
Masukkan bumbu mie instan pada piring
Hidupkan kompor, kemudian tuangkan air kurang lebih tiga gelas air ke dalam panci kemudian tunggu hingga air mendidih.
Masukkan mie instan ke dalam air mendidih, lalu aduk dan tunggu hingga tiga menit.
Tiriskan air di dalam panci, kemudian tuangkan mie pada piring.
Aduk mie agar bumbu tercampur merata pada mie kemudian sajikan dengan keadaan hangat.

Kurang lebih di atas merupakan cara membuat mie instan. Langkah-langkah di atas juga termasuk dalam Algoritma. Jadi perlu diingat bahwa Algoritma tidak hanya diterapkan pada dunia komputasi, tetapi juga Algoritma diterapkan dalam kehidupan sehari-hari.

Sedangkan dalam dunia komputasi, contoh penggunaan Algoritma adalah dalam pembuatan program pada bahasa pemrograman seperti bahasa C, C#, dan Visual Basic. Dengan syntax pada tiap bahasa pemrograman dan Algoritma, maka akan tersusun program-program dan terlahirlah software.

Jadi intinya, Pengertian Algoritma adalah suatu langkah/urutan yang logis dan sistematis untuk pemecahan suatu masalah atau untuk mencapai tujuan yang diinginkan.

Konsep Pemrograman Dasar

KONSEP DASAR PEMROGRAMAN

Pengertian Dasar Program adalah rangkaian instruksi-instruksi dalam bahasa komputer yang disusun secara logika dan sistematis.
Pengertian Pemrogramanadalahsuatu kumpulan urutan perintah ke komputer untuk mengerjakan sesuatu, dimana instruksi tersebut menggunakan bahasa yang dimengerti  oleh komputer atau dikenal dengan bahasa pemrograman.
Konsep Dasar Pemrograman pada umumnya adalah IPO (Input Proses Output), lalu dikembangkan mejadi :
Originating -> input -> proses -> Output -> Distribution
||
Storage
Originating
Berhubungan dengan pengumpulan data yang biasanya merupakan pencatatan data kedokumen dasar. Setelah dikumpulkan dilakukan proses input.
Input
Tahapan ini merupakan proses pemasukan data kedalam proses komputer melalui peralatan input.
Proses
Tahap ini merupakan proses pengolahan data dari data yang sudah diinput berupa proses    menghitung membandingkan, mengurutkan, mengklasifikasikan, mengendalikan dan mencari di storage.
Output
Tahap ini merupakan proses untuk menghasilkan keluaran dari proses pengolahan data ke peralatan output berupa informasi (monitor, speaker, dsb)
Distribution
Tahap ini merupakan proses penyebaran informasi kepada pihak-pihak yang berhak dan membutuhkan informasi.
Storage
Tahap ini merupakan perekaman hasil pengolahan data storage yang nantinya dapat dipergunakan untuk input proses selanjutnya.
DATA 
Data adalah bahan mentah yang akan diolah menjadi informasi sehingga  dapat dipergunakan oleh user atau pemakai.
1. Tipe Data Dasar : Merupakan tipe data primitif yang tidak terstruktur yang didefinisikan oleh bahasa pemrograman.
Tipe data dasar dibagi menjadi lima bagian yaitu :
a. Numerik, yaitu menyimpan data berupa angka
b. Enumerasi, yaitu suatu urutan list dari nilai-nilai yang berbeda.
c. Boolean, yaitu tipe data untuk merepresentasikan True atau False.
d. Character, yaitu tipe data untuk menyimpan rangkaian karakter.
e. Internationalization, disebut I18N
2. Tipe Data Terstruktur : Merupakan tipe data campuran dari berbagai tipe data dasar. Contohnya array, record, string, list dan file.
3. Tipe Data didefinisikan oleh Pemakai : Tipe data ini biasanya disebut Enumerasi.
4. Tipe Data Penunjuk : Contoh tipe data penunjuk adalah pointer
Model Komputasi
Model Komputasi adalah suatu kumpulan dari nilai dan operasi-operasi. Ada 3 dasar model komputasi :
1. Model Fungsional, yaitu model perhitungan yang fungsional terdiri dari satu set nilai-nilai, fungsi dan operasi, aplikasi, fungsi dan komposisi fungsi.
2. Model Logika, yaitu logika model perhitungan terdiri dari suatu set nilai-nilai, definisi hubungan dan kesimpulan logis.
3. Model Imperative, yaitu model perhitungan yang imperative terdiri dari satu set nilai-nilai yang mencakup suatu status dan operasi tugas-tugas untuk memodifikasi status tersebut.
Prinsip Bahasa Pemrograman
Empat prinsip dasar perancangan bahasa pemrograman adalah:
1. Sintaks, menjelaskan bagaimana struktur program yang benar.
2.Tipe sistem dan semantik, menunjukkan tipe nilai yang dapat dimanipulasi oleh program dan arti(semantik) dari program, mencakup juga aturan penamaan entitas (variabel,fungsi,class,parameter,dll).
3. Manajemen memori, menunjuk kepada sekumpulan teknik yg membantu kita untuk memahami pemetaan letak dari nilai, struktur data, dan struktur program di dalam memori.
4. Exception handling, mengenai penanganan exception (hal-hal yang tak terduga seperti kesalahan input ketika menjalankan program).
Definisi Sintaks, Semantik, dan Pragmatik

Sintaks   : Aturan gramatikal / komposisi suatu program yang mengatur tata cara penulisanhuruf, angka dan karakter lain.
Contoh : Pada pembuatan program Pascal antara 2 statement dipisahkan oleh ; (titik koma)
X:=1;  X:=X+1;
Semantik : Mendefinisikan arti dari program yang benar secara sintaks dari bahasa pemrograman tersebut.
Contoh : Pada pembuatan program C
int vector[10]
Arti semantiknya akan menyebabkan ruang sebanyak 10
Pragmatik  : Kemampuan pemakai dalam mengaitkan kalimat dengan kontek-kontek yang sesuai bagi kalimat tersebut.
Contoh : (A+B)*(A-B)