TAILIEUCHUNG - PROMELA & SPIN

Dalam PROMELA tidak ada perbedaan antara conditions dan statements. Eksekusi dari statement bergantung kepada sifat executability nya. PROMELA statement bisa executable atau blocked bergantung kepada nilai dari variable atau isi dari message channels. Jika kondisi benar (holds) maka statement dieksekusi. Jika tidak, maka dia akan terblokir (blocked) sampai condition holds | PROMELA & SPIN Budi Rahardjo Kuliah Metoda Formal 2004 PROMELA & SPIN - Budi Rahardjo PROMELA & SPIN PROMELA = PROcess MEta Language Sebuah bahasa untuk men-spesifikasi-kan sistem Menggabungkan CSP, C, SDL SPIN merupakan tools untuk melakukan (model) checking terhadap sistem yang dituliskan dalam PROMELA Bahasa PROMELA PROMELA & SPIN - Budi Rahardjo OBJECTS Ada 3 objects (akan dijelaskan nanti) Processes Message channels State variables Object ini bisa ditransalasikan menjadi finite state machine PROMELA & SPIN - Budi Rahardjo Executability of statements Dalam PROMELA tidak ada perbedaan antara conditions dan statements Eksekusi dari statement bergantung kepada sifat executability nya PROMELA statement bisa executable atau blocked bergantung kepada nilai dari variable atau isi dari message channels Jika kondisi benar (holds) maka statement dieksekusi. Jika tidak, maka dia akan terblokir (blocked) sampai condition holds PROMELA & SPIN - Budi Rahardjo Variabel & Data Types Ada 6 predefined data types Bit, bool, byte, short, int, chan Ukuran (1), (1), (8), (16), (32) bit, kecuali channel Chan -> message channel, yaitu sebuah object yang dapat menyimpan beberapa nilai yang disatukan menjadi sebuah struktur Contoh penggunaan bool flag; int state; byte msg; PROMELA & SPIN - Budi Rahardjo Array Variabel dapat dinyatakan sebagai array byte state[N] state[0] = state[3] + 5 * state[3*2/n] Declaration dan assigments selalu executable PROMELA & SPIN - Budi Rahardjo Process proctype A() { byte state; state = 3} merupakan deklarasi sebuah proses dengan sebuah variable yang bernama state Tanda titik koma (semicolon) merupakan statement separator (bukan statement terminator). Ada dua statement separator: anak panah -> dan titik koma ;. Keduanya ekivalen PROMELA & SPIN - Budi Rahardjo Contoh byte state = 2; proctype A() { (state == 1) -> state = 3} proctype B() { state = state – 1} PROMELA & SPIN - Budi Rahardjo Initial Process init { run A(); run .

TAILIEUCHUNG - Chia sẻ tài liệu không giới hạn
Địa chỉ : 444 Hoang Hoa Tham, Hanoi, Viet Nam
Website : tailieuchung.com
Email : tailieuchung20@gmail.com
Tailieuchung.com là thư viện tài liệu trực tuyến, nơi chia sẽ trao đổi hàng triệu tài liệu như luận văn đồ án, sách, giáo trình, đề thi.
Chúng tôi không chịu trách nhiệm liên quan đến các vấn đề bản quyền nội dung tài liệu được thành viên tự nguyện đăng tải lên, nếu phát hiện thấy tài liệu xấu hoặc tài liệu có bản quyền xin hãy email cho chúng tôi.
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.