Datori attēlo un darbojas ar datiem kā nulles un vieninieku kombinācijas. Šajā rakstā ir izskaidroti principi, kā tiek apstrādāti negatīvi skaitļi, izmantojot zīmju absolūto vērtību, 1. papildinājumu un 2. papildinājumu.
Datori attēlo datus iekšēji, izmantojot bitus, kas apzīmēti ar 0 vai 1 kā mazāko vienību. Ir noteikts bitu skaits, ko dators var apstrādāt vienlaikus, ko sauc par vārdu. Piemēram, 64 bitu dators vienā vārdā apstrādā 64 bitus. Lai attēlotu pozitīvu veselu skaitli datorā ar 4 bitiem uz vārdu, nozīmīgākais bits, kas ir galējais kreisais cipars no 4 bitiem, tiek attēlots ar 0, lai attēlotu pozitīvu skaitli, un atlikušie 3 biti ir absolūtais skaitlis. vesela skaitļa vērtība. 0111 gadījumā galējais kreisais bits '0' apzīmē pozitīvu skaitli, bet atlikušais '111' ir vesela skaitļa absolūtās vērtības 7, kas ir +7, binārais attēlojums. Atlikušos bitus, izņemot visnozīmīgāko bitu, sauc par datu bitiem.
Tomēr, attēlojot negatīvu veselu skaitli, nozīmīgākais bits tiek attēlots kā 1. Lai attēlotu -3, mēs pievienotu nozīmīgāko bitu 1 līdz 011, kas ir absolūtās vērtības -3 binārais attēlojums. Šo negatīvo skaitļu attēlošanas veidu sauc par “absolūto vērtību ar zīmi”. Tomēr zīmētās absolūtās vērtības ir neprecīza matemātika. Piemēram, ja jūs aprēķinātu 7-3, tas tiktu attēlots kā 0111+1011, kas ir 7+(-3). Tā kā datoros tiek izmantotas tikai nulles un vieninieki, 1 pievienošana 1 uzreiz palielina vietas vērtību līdz 10. Tātad 0111 plus 1011 ir vienāds ar 10010. 10010 ir vairāk nekā viens vārds, ko var apstrādāt 4 bitu dators. Šo parādību sauc par pārplūdi. Absolūtajās vērtībās ar zīmēm aprēķins ir neprecīzs, jo nav īpašu noteikumu pārpildes apstrādei. Arī 0000 vai 1000 apzīmē nulli, kas ir mazāk konsekventa attēlojumā un mazāk efektīva uzglabāšanā.
Vēl viens veids, kā attēlot negatīvus veselus skaitļus, ir “1 papildinājuma” metode. Papildinājums ir skaitlis, kas papildina skaitli, un n papildinājums jebkuram skaitlim a ir skaitlis, kura summa ar a ir n. Piemēram, papildinājums no 1 līdz 1 ir 0, un papildinājums no 1 līdz 0 ir 1. Veids, kā attēlot negatīvos skaitļus bāzē 1, ir attēlot nozīmīgāko bitu kā 1 un datu bitus kā katra cipara 1 papildinājumu. 1. papildinājums ir skaitlis, kas katram ciparam summējas ar 1, tādēļ, ja 3. papildinājumā būtu attēlots -1, datu biti būtu 100, 1. papildinājums 011, kas ir -3 absolūtās vērtības 3 binārais attēlojums. Pievienojot 1 visnozīmīgākajam bitam, lai attēlotu negatīvus skaitļus, var iegūt atsevišķu metodi base1100. pārplūdes gadījumā, lai nodrošinātu, ka aprēķinātā vērtība ir pareiza. Tomēr tas nevar atrisināt problēmu, kas saistīta ar nulles attēlošanu, ja aprēķinātā vērtība ir 0000 vai 1111.
Lai atrisinātu problēmu par nulles attēlošanu divos veidos, negatīvu skaitļu attēlošanai izmanto divu pakāpju metodi. Divu komplementa metode tiek attēlota kā viens papildinājums, un pēc tam viens tiek pievienots datu bitiem. Lai attēlotu -3 2. papildinājumā, jums jāatrod 100, 1. papildinājums 011, binārais attēlojums -3 absolūtajai vērtībai 3 un pēc tam jāpievieno 1 līdz 101, visnozīmīgākajam bitam, lai attēlotu negatīvo skaitli, lai iegūtu 1101. Pieņemot, ka dators, kas apstrādā 4 bitus kā 1 vārdu, aprēķina 7 3. Lai attēlotu pozitīvu veselu skaitli, jums nav jāizmanto ne 2., ne 1. papildinājums, tāpēc 2-7 ir 3+(-7), kas ir 3+0111 1101. papildinājumā. Aprēķinot to, tiek iegūts 2, kas ir pārpildīts par 10100 bitiem. 4. komplementa noteikums liek mums izmest liekos bitus, kad notiek pārpilde, kā rezultātā rodas 2.
Datori apstrādā un attēlo datus dažādos veidos, un šajā procesā svarīga ir efektivitāte un precizitāte. Sarežģītā matemātika, īpaši, ja attēlo negatīvus skaitļus, spēlē svarīgu lomu datorzinātnēs. Parakstītajai absolūtajai vērtībai, 1. bāzei un 2. bāzei katrai ir savas priekšrocības un trūkumi, un jums jāizvēlas atbilstošā metode, pamatojoties uz faktisko pielietojumu. Izpratne par šiem jēdzieniem sniegs arī dziļāku izpratni par datoru darbību. Datu attēlošanas veids tieši ietekmē datora veiktspēju un skaitļošanas efektivitāti, un to optimizēšana ir liels izaicinājums. Datorzinātnieki pastāvīgi veic pētījumus, lai atrisinātu šīs problēmas, un tiek izstrādātas jaunas metodes un paņēmieni. Šai pētniecībai un attīstībai, kā arī datortehnoloģiju attīstībai ir milzīga ietekme uz sabiedrību kopumā.