m.kelas-karyawan-ftumj.prestasi.web.id Layanan Informasi 17 Jam
Telp/Fax : 021-8762002, 8762003, 8762004, 87912360
HP/SMS : 081 1110 4824 27, 0812 9526 2009, 08523 1234 000
WhatsApp : 0817 0816 486, 0812 9526 2009
email : _Hubungi Kami__ silahkan klik
Chatting dengan Staf :
ggkarir.com
ggiklan.com
Pilih Bahasa :   ID   EN   Permintaan Katalog / Brosur (GRATIS via POS)   Kelas Karyawan   Reguler
D3 Analis Farmasi dan Makanan (Anafarma)Kedutaan KBRIKab/Kota, Desa, Kec.CPNSNegara seluruh DuniaReferensi ICTS2JavaScriptPerangkat Lunak (Software)

   
Cari  
    Teknik Informatika

    Sebelumnya  (Reduced instruction set computing) (Refinement (computing))  Berikutnya    

Reference (computer science)

In computer science, a reference is a value that enables a program to indirectly access a particular datum, such as a variable or a record, in the computer's memory or in some other storage device. The reference is said to refer to the datum, and accessing the datum is called dereferencing the reference.

A reference is distinct from the data itself. Typically, a reference is the physical address of where the data is stored in memory or in the storage device. For this reason, a reference is often called a pointer or address, and is said to point to the data. However a reference may also be the offset (difference) between the datum's address and some fixed "base" address, or an index into an array.

The concept of reference must not be confused with other values (keys or identifiers) that uniquely identify the data item, but give access to it only through a non-trivial lookup operation in some table data structure.

References are widely used in programming, especially to efficiently pass large or mutable data as arguments to procedures, or to share such data among various uses. In particular, a reference may point to a variable or record that contains references to other data. This idea is the basis of indirect addressing and of many linked data structures, such as linked lists.

Contents

Benefits

References increase flexibility in where objects can be stored, how they are allocated, and how they are passed between areas of code. As long as one can access a reference to the data, one can access the data through it, and the data itself need not be moved. They also make sharing of data between different code areas easier; each keeps a reference to it.

The mechanism of references, if varying in implementation, is a fundamental programming language feature common to nearly all modern programming languages. Even some languages that support no direct use of references have some internal or implicit use. For example, the call by reference calling convention can be implemented with either explicit or implicit use of references.

Examples

Pointers are the most primitive. Due to their intimate relationship with the underlying hardware, they are one of the most powerful and efficient types of references. However, also due to this relationship, pointers require a strong understanding by the programmer of the details of memory architecture. Because pointers store a memory location's address, instead of a value directly, inappropriate use of pointers can lead to undefined behavior in a program. Smart pointers are opaque data structures that act like pointers but can only be accessed through particular methods.

File handles, or handles, are a type of reference used to abstract file content. It usually represents both the file itself, as when requesting a lock on the file, and a specific position within the file's content, as when reading a file.

In distributed computing, the reference may contain more than an address or identifier; it may also include an embedded specification of the network protocols used to locate and access the referenced object, the way information is encoded or serialized. Thus, for example, a WSDL description of a remote web service can be viewed as a form of reference; it includes a complete specification of how to locate and bind to a particular web service. A reference to a live distributed object is another example: it is a complete specification for how to construct a small software component called a proxy that will subsequently engage in a peer-to-peer interaction, and through which the local machine may gain access to data that is replicated or exists only as a weakly consistent message stream. In all these cases, the reference includes the full set of instructions, or a recipe, for how to access the data; in this sense, it serves the same purpose as an identifier or address in memory.

Formal representation

More generally, a reference can be considered as a piece of data that allows unique retrieval of another piece of data. This includes primary keys in databases and keys in an associative array. If we have a set of data D, any well-defined (single-valued) function from D onto D ∪ {null} defines a type of reference, where null is the image of a piece of data not referring to anything meaningful.

An alternative representation of such a function is a directed graph called a reachability graph. Here, each datum is represented by a vertex and there is an edge from u to v if the datum in u refers to the datum in v. The maximum out-degree is one. These graphs are valuable in garbage collection, where they can be used to separate accessible from inaccessible objects.

External and internal storage

In many data structures, large, complex objects are composed of smaller objects. These objects are typically stored in one of two ways:

  1. With internal storage, the contents of the smaller object are stored inside the larger object.
  2. With external storage, the smaller objects are allocated in their own location, and the larger object only stores references to them.

Internal storage is usually more efficient, because there is a space cost for the references and dynamic allocation metadata, and a time cost associated with dereferencing a reference and with allocating the memory for the smaller objects. Internal storage also enhances locality of reference by keeping different parts of the same large object close together in memory. However, there are a variety of situations in which external storage is preferred:

  • If the data structure is recursive, meaning it may contain itself. This cannot be represented in the internal way.
  • If the larger object is being stored in an area with limited space, such as the stack, then we can prevent running out of storage by storing large component objects in another memory region and referring to them using references.
  • If the smaller objects may vary in size, it's often inconvenient or expensive to resize the larger object so that it can still contain them.
  • References are often easier to work with and adapt better to new requirements.

Some languages, such as Java, Smalltalk, Python, and Scheme, do not support internal storage. In these languages, all objects are uniformly accessed through references.

Language support

In assembly languages, the first languages used, it is typical to express references using either raw memory addresses or indexes into tables. These work, but are somewhat tricky to use, because an address tells you nothing about the value it points to, not even how large it is or how to interpret it; such information is encoded in the program logic. The result is that misinterpretations can occur in incorrect programs, causing bewildering errors.

One of the earliest opaque references was that of the Lisp language cons cell, which is simply a record containing two references to other Lisp objects, including possibly other cons cells. This simple structure is most commonly used to build singly linked lists, but can also be used to build simple binary trees and so-called "dotted lists", which terminate not with a null reference but a value.

Another early language, Fortran, does not have an explicit representation of references, but does use them implicitly in its call-by-reference calling semantics.

The pointer is still one of the most popular types of references today. It is similar to the assembly representation of a raw address, except that it carries a static datatype which can be used at compile-time to ensure that the data it refers to is not misinterpreted. However, because C has a weak type system which can be violated using casts (explicit conversions between various pointer types and between pointer types and integers), misinterpretation is still possible, if more difficult. Its successor C++ tried to increase type safety of pointers with new cast operators and smart pointers in its standard library, but still retained the ability to circumvent these safety mechanisms for compatibility.

A number of popular mainstream languages today such as Eiffel, Java, C#, and Visual Basic have adopted a much more opaque type of reference, usually referred to as simply a reference. These references have types like C pointers indicating how to interpret the data they reference, but they are typesafe in that they cannot be interpreted as a raw address and unsafe conversions are not permitted.

Fortran

A Fortran reference is best thought of as an alias of another object, such as a scalar variable or a row or column of an array. There is no syntax to dereference the reference or manipulate the contents of the referent directly. Fortran references can be null. As in other languages, these references facilitate the processing of dynamic structures, such as linked lists, queues, and trees.

Functional languages

In all of the above settings, the concept of mutable variables, data that can be modified, often makes implicit use of references. In Standard ML, OCaml, and many other functional languages, most values are persistent: they cannot be modified by assignment. Assignable "reference cells" serve the unavoidable purposes of mutable references in imperative languages, and make the capability to be modified explicit. Such reference cells can hold any value, and so are given the polymorphic type α ref, where α is to be replaced with the type of value pointed to. These mutable references can be pointed to different objects over their lifetime. For example, this permits building of circular data structures. The reference cell is functionally equivalent to an array of length 1.

To preserve safety and efficient implementations, references cannot be type-cast in ML, nor can pointer arithmetic be performed. It is important to note that in the functional paradigm, many structures that would be represented using pointers in a language like C are represented using other facilities, such as the powerful algebraic datatype mechanism. The programmer is then able to enjoy certain properties (such as the guarantee of immutability) while programming, even though the compiler often uses machine pointers "under the hood".

Symbolic references

Some languages, like Perl, support symbolic references, which are just string values that contain the names of variables. When a value that is not a regular reference is dereferenced, Perl considers it to be a symbolic reference and gives the variable with the name given by the value.[1] PHP has a similar feature in the form of its $$var syntax.[2]

References in object oriented languages

Most object oriented languages use references to access and assign objects. References are used in function/method calls or message passing, and a reference count is kept to perform garbage collection of unused object.

See also

References

  1. ^ http://perldoc.perl.org/perlref.html#Symbolic-references
  2. ^ http://www.php.net/manual/en/language.variables.variable.php

External links

  • Pointer Fun With Binky Introduction to pointers in a 3 minute educational video - Stanford Computer Science Education Library
    Sebelumnya  (Reduced instruction set computing) (Refinement (computing))  Berikutnya    





Tags: Reference (computer science), Teknik Informatika, 2243, Reference (computer science) In computer science a reference is a value that enables a program to indirectly access a particular datum such as a variable or a record in the computer 's memory or in some other storage device, The reference is said to refer to the datum and accessing the datum is called dereferencing the reference, A reference is distinct from the data itself, Typically a referenc, Reference (computer science), Bahasa Indonesia, Contoh Instruksi, Tutorial, Referensi, Buku, Petunjuk, Panjunan sukodono sidoarjo, Br, Ebenezer odunlami, Bs, Danijel aleksic, Bsdmart, Universitas pgri yogyakarta, Jack kelsey, Bt m.kelas karyawan ftumj, prestasi.web.id
 Lowongan Karir    Permintaan Beasiswa Kuliah    Program Perkuliahan Reguler    Macam2 Perdebatan    Program Magister (Pascasarjana, S2)    Kumpulan Artikel Bebas    Download Brosur
Informasi PTS
Khusus Perguruan Tinggi Swasta
Terkemuka & Terakreditasi
STMIKMJ Jakarta
STIE IGI
STTM STIE WP
STEI Jogja
STIE Hidayatullah
STEBI Bina Essa
UMJ: FTan FISIP
Univ. Muhammadiyah Smrg
Univ. Muhammadiyah Sby
UNSUB
STMIK MJ UNKRIS
Univ. Thamrin: FE FASILKOM
ISTA ITBU
STIE Trianandra STIE IGI
STT Mandala Bandung
STMIK STIKOM Bali STTB
POLNAS Denpasar
STT Bina Tunggal Bks.
STIKI Malang
UNDARIS Semarang
INDOCAKTI
UPRI
STIE Hidayatullah Depok
UNISA Dharma Andigha
Universitas Nusantara
UHAMZAH
UTS Makassar
STT Duta Bangsa
STIE GICI IMWI Sukabumi
UNAKI KAHURIPAN
STEI Jogja STIE Pemuda
Universitas Mpu Tantular
USCND Langsa
USM INDONESIA STTM
UNUGHA UM Palangkaraya
STIE WD IKIP WD
STIE Ganesha Yuppentek
STT Muttaqien
STIT BATAM IAI AS
UCM STIE GEMA
Universitas Megou
STIE PIONEER
STIMAIMMI STIEABI
UPGRIS UICM Bandung
AL-AZHAR UNUSA
Tanri Abeng University
STIE AMKOP STIE WP
Univ. Boyolali UDB
UNIBA ITB AD
UNU KALBAR
Ubudiyah
ISIF
STEBI Global Mulia
STT Sapta Taruna
Universitas Bali Dwipa
UNU Kaltim UHS
Univetsitas IVET
CENDEKIA STAI DB
STIE Mitra STiPSi
UNIPI Bandung
STIE Al-Rifa'ie
UNTARA Pelita Bangsa
Patria Artha
Univ. Widya Kartika
UTN Bogor IGN Bogor
Parna Raya
STAI Terpadu Yogyakarta
STIT Al-Hikmah Lampung
Univ. Deli Sumatera
STIA Bayuangga
UI Mandiri
STAI Muhammadiyah Probolinggo
STEBI Bina Essa
STAI Muhammadiyah Tulungagung
Politeknik Harapan Bangsa Surakarta
STIKes Sapta Bakti
ITeKes Tri Tunas Nasional
STEBI Badri Mashduqi
STIA Maulana Yusuf
STAI Miftahul Ulum
STIH Gunung Jati
STIE PPI Balaraja
Poltekkes Kerta Cendekia
ITB Pelita Raya
Poltek Ganesha
Universitas Moch. Sroedji
STIT Al-Hidayah Tasikmalaya
STIT Nur Ahadiyah
Politeknik Aisyiyah
Politeknik Santo Paulus Surakarta
IAI Al-Ghurabaa Jakarta
STAI AL Akbar Surabaya
Universitas Mahakarya Asia Yogyakarta
Politeknik Bhakti Kartini
Univ. Muhammadiyah Smrg
STMIK MJ UNKRIS
Thamrin: FE FASILKOM
STT Bina Tunggal Bks.
STIKI Malang
UNDARIS Semarang
INDOCAKTI
UPRI
STIE Hidayatullah Depok
UNISA Dharma Andigha
Universitas Nusantara
UHAMZAH
UTS Makassar
STT Duta Bangsa
STIE GICI IMWI Sukabumi
UNAKI KAHURIPAN
STEI Jogja STIE Pemuda
Universitas Mpu Tantular
USCND Langsa
USM INDONESIA
UM Palangkaraya
UNUGHA STIE WD IKIP WD
STIE Ganesha Yuppentek
STT Muttaqien
STIT BATAM IAI AS
UCM STIE GEMA
Universitas Megou
STIE PIONEER
STIMAIMMI STIEABI
UPGRIS UICM Bandung
AL-AZHAR UNUSA
Tanri Abeng University
STIE AMKOP STIE WP
Univ. Boyolali UDB
UNIBA ITB AD
UNU KALBAR
Ubudiyah ISIF
STEBI Global Mulia
STT Sapta Taruna
Universitas Bali Dwipa
UNU Kaltim UHS
Univetsitas IVET
CENDEKIA STAI DB
STIE Mitra STiPSi
UNIPI Bandung
STIE Al-Rifa'ie
UNTARA Pelita Bangsa
Patria Artha
Univ. Widya Kartika
UTN Bogor IGN Bogor
Parna Raya
STAI Terpadu Yogyakarta
STIT Al-Hikmah Lampung
Univ. Deli Sumatera
STIA Bayuangga
UI Mandiri
STAI Muhammadiyah Probolinggo
STEBI Bina Essa
STAI Muhammadiyah Tulungagung
Politeknik Harapan Bangsa Surakarta
STIKes Sapta Bakti
ITeKes Tri Tunas Nasional
STEBI Badri Mashduqi
STIA Maulana Yusuf
STAI Miftahul Ulum
STIH Gunung Jati
STIE PPI Balaraja
Poltekkes Kerta Cendekia
ITB Pelita Raya
Poltek Ganesha
Universitas Moch. Sroedji
STIT Al-Hidayah Tasikmalaya
STIT Nur Ahadiyah
Politeknik Aisyiyah
Politeknik Santo Paulus Surakarta
IAI Al-Ghurabaa Jakarta
STAI AL Akbar Surabaya
Universitas Mahakarya Asia Yogyakarta
Politeknik Bhakti Kartini
MM UNKRIS MIKom Fisip UMJ MIA Fisip UMJ
MM STIE Mitra MM UNTARA MM Pelita Bangsa
MM STIE Ganesha
MM STIMAIMMI MM STIEABI
MM STIE IGI MM STIE GICI MKS ITB Ahmad Dahlan
MM IGN MKom IGN
KPT Konsultan Pendidikan Tinggi
Chatting dengan staf
Kuliah Karyawan

(silakan klik di bawah ini)
Penerimaan / Pendaftaran
__Mahasiswa Baru

Lokasi Kampus & Peta
Program Studi (D3, S1, S2)
___(+ Kurikulum & Prospektus)

Pascasarjana (S2)
Biaya Pendidikan
Sistem Pendidikan
Jadwal Kuliah & Dosen
Keunggulan-Keunggulan
Angkutan Umum


GALERI FOTO



 Perkuliahan Hybrid di 112 PTS Terbaik    Platform Try Out Online    Pendaftaran Online    Semua Informasi    Soal-Jawab Psikotes    Buku Referensi    Jadwal Sholat    Alquran Online    Kuliah Shift    Program Kelas Entrepreneur    Program Kuliah Tanpa Biaya
Link Khusus ke
PTS Terakreditasi & Terkemuka
Penyelenggara Program S1, D3, S2

(silakan klik di bawah ini)
STMIKMJ - STMIKMJ Jakarta
IGI - STIE IGI Jakarta
STTM Cileungsi - STIE Cileungsi
STIE WP - STIE Widya Persada
UPRI - UPRI Makassar
STEI - STEI Yogyakarta
STIE - Hidayatullah Depok
STEBI - Bina Essa
P2KKMPoliteknik Aisyiyah

P2KKMUMPTB Lampung
P2KKMSTIT Al-Hikmah Lampung

P2KKMUniv.Amir Hamzah
P2KKMUSM Indonesia
P2KKMUniv. Al-Azhar Medan
P2KKMUniversitas Deli Sumatera

P2KKMUniv. Muh. Palangkaraya

P2KKMSTIT Nur Ahadiyah

P2KKMUniv. Nahd. Ulama Kalbar

P2KKMUniv. Nahd. Ulama Kaltim

Langsa -- Aceh :
P2KKMUSCND Langsa

P2KKMUniv. Ubudiyah Indonesia

P2KKMSTIT Hidayatullah
P2KKMIAI Abdullah Said

P2KKMUniv. Pejuang Rep. Ind.
P2KKMUniv. Teknologi Sulawesi
P2KKMUniv. Cokroaminoto Makassar
P2KKMITeKes Tri Tunas Nasional

P2KKMUniv. Patria Artha

P2KKMUniv. Nusantara, Manado
P2KKMSTIE Pioneer Manado
P2KKMUniversitas Parna Raya Manado

P2KKMUniversitas Boyolali

P2KKMUniversitas Duta Bangsa
P2KKMPoliteknik Harapan Bangsa Surakarta
P2KKMPoliteknik Santo Paulus Surakarta

P2KKMUNIBABWI

P2KKMUniv. Muhammadiyah Smrg
P2KKMUNDARIS Semarang
P2KKMUNAKI Semarang
P2KKMUPGRIS Semarang
P2KKMUniv. IVET Semarang
P2KKMSTIE Cendekia

P2KKMUNUGHA Cilacap

P2KKMUniv. Muhammadiyah Sby
P2KKMSTIE Pemuda Sby
P2KKMIKIP Widya Darma Sby
P2KKMSTIE Widya Darma Sby
P2KKMSTIE ABI Surabaya
P2KKMUNUSA Surabaya
P2KKMUniv. Widya Kartika
P2KKMSTAI Al Akbar Surabaya

P2KKMUniv. Kahuripan Kediri

P2KKMSTAI Muhammadiyah Tulungagung

P2KKMSTIKI Malang
P2KKMSTIE INDOCAKTI
P2KKMSTIE Al Rifa'ie

P2KKMSTIA Bayuangga
P2KKMSTAI Muhammadiyah Probolinggo

P2KKMUniversitas Moch. Sroedji

P2KKMSTEI JOGJA - STEI Yogyakarta
P2KKMSTIE Mitra Indonesia
P2KKMSTiPsi
P2KKMSTAI Terpadu Yogyakarta
P2KKMUniversitas Mahakarya Asia

P2KKMSTIE Hidayatullah
P2KKMSTIE - GICI A
P2KKMSTIE - GICI A


P2KKMSTMIK-MJ - STMIK Muh. Jkt.
P2KKMUNKRIS - Krisnadwipayana
P2KKMSTT Bina Tunggal - Bekasi
P2KKMSTT Duta Bangsa - Bekasi
P2KKMSTIE - GICI C
P2KKMSTEBI Global Mulia
P2KKMUniversitas Pelita Bangsa
P2KKMUniversitas Indonesia Mandiri
P2KKMPoliteknik Bhakti Kartini

P2KKMSTMIK-STIKOM Bali
P2KKMPOLNAS Denpasar
P2KKMUniversitas Bali Dwipa
P2KKMPoltek Ganesha Guru Singaraja

P2KKMSTIE Ganesha
P2KKMSTT Yuppentek
P2KKMITB Ahmad Dahlan
P2KKMUniv. Tangerang Raya
P2KKMSTIA Maulana Yusuf
P2KKMSTIH Gunung Jati
P2KKMSTIE PPI Balaraja

P2KKMUNSUB - Universitas Subang

P2KKMSTIT Al-Hidayah Tasikmalaya

P2KKMSTIE Walisongo
P2KKMSTT Walisongo

P2KKMUniv. Islam Al-Ihya

P2KKMSTT Mandala, Bandung
P2KKMSTT Bandung
P2KKMSTIE Gema Widya Bangsa
P2KKMUniversitas Insan Cendekia Mandiri
P2KKMUniversitas Halim Sanusi
P2KKMUniversitas Persatuan Islam
P2KKMSTEBI Bina Essa

P2KKMSTT Dr. Khez Muttaqien

P2KKMIMWI Sukabumi

P2KKMSTIH Dharma Andigha
P2KKMUniversitas Teknologi Nusnatara

P2KKMSTT Muhammadiyah Cileungsi

P2KKMISTA - Institut ST Al Kamal
P2KKMSTIE IGI - Inter. Golden Inst.
P2KKM Univ. Mpu Tantular B

P2KKMU M J - Univ. Muh. Jkt

P2KKMFISIP UMJ - Univ. Muh. Jkt.
P2KKMFTan UMJ - Agroteknologi
P2KKMSTIE Trianandra Jakarta
P2KKMSTIE - GICI B
P2KKMSTIE Ganesha
P2KKMSTIMAIMMI Jakarta
P2KKMTanri Abeng University

P2KKMUMHT - Univ. MH. Thamrin
P2KKMFE UMHT - FE MH. Thamrin
P2KKMFASILKOM UMHT
P2KKMUNKRIS - Krisnadwipayana
P2KKMITBU - Inst. Tek. Budi Utomo
P2KKMSTIE Trianandra Jakarta
P2KKMSTMIK Muh. Jkt - Matraman
P2KKMSTMIK Muh. Jkt - Ciracas
P2KKMUniv. Mpu Tantular A
P2KKMSTT Sapta Taruna
P2KKMIAI Al-Ghurabaa Jakarta

P2KKMISIF - Institut Studi Islam Fahmina

P2KKMSTEBI Global Mulia

P2KKMSTIKes Sapta Bakti
P2KKMSTAI Miftahul ulum

P2KKMPoltekkes Kerta Cendekia

P2KKMPelita Raya Institute


KPT Konsultan Pendidikan Tinggi

Sampaikan ke Teman Anda
Nama Anda

Email Anda

Email Teman 1
❑ harus diisi dengan benar

Tautan Elok
silakan klik
Daftar Partai & Caleg (Arsip)
Perpustakaan Nasional Dunia
Kepustakaan Dunia

1. STIE GICI Business School Bogor - STIE GICI Business School Bogor - STIE GICI, Bogor : Jl. Pahlawan No.25A, RT.03/RW.11, Empang, Kec. Bogor Sel., Kota Bogor, Jawa Barat 16132
2. Universitas Nusa Mandiri Kramat - Universitas Nusa Mandiri Kramat - Kampus: Jl. Kramat Raya No.18, RT.5/RW.7, Kwitang, Kec. Senen, Kota Jakarta Pusat 10450
3. Universitas Nusa Mandiri Jatiwaringin - Universitas Nusa Mandiri Jatiwaringin - Kampus: Jl. Jatiwaringin No. 2, Cipinang Melayu, Jakarta Timur
stiebiitm.web.id  |  stiesahidbali.web.id  |  pljdepok.web.id  |  stieswadaya.web.id  |  stih-awanglong.web.id  |  mm-stieswadaya.web.id  |  ma-stieswadaya.web.id  |  magister-stieswadaya.web.id  |  s2-uwks.web.id

panjunan-sukodono-sidoarjo-wb-57704.br.web.id  ➩   ebenezer-odunlami.bs.web.id  ➩   danijel-aleksic-wb-6471.bsdmart.com  ➩   universitas-pgri-yogyakarta.bsdmart.web.id  ➩   jack-kelsey-wb-46977.bt.web.id
perkuliahan-s2-puputan-p2k-polnas-denpasar.singokarir.com  ➩   program-d3-bekasi-p2k-sttbinatunggal.singokerja.com  ➩   program-kelas-diploma-tiga-kepanjen-p2k-stiki-malang.singomart.com  ➩   program-kuliah-strata-satu-p2k-undaris.singomart.web.id  ➩   program-perkuliahan-strata-dua-jombang-p2k-indocakti.singomusic.info