Pytania otagowane jako arithmetic

Pytania dotyczące implementacji elementarnych operacji arytmetycznych na komputerze ze sprzętem lub algorytmami. Często zakłada się, że liczby są w reprezentacji binarnej, dodaj znacznik [zmiennoprzecinkowy] dla operacji arytmetycznych na liczbach w reprezentacji zmiennoprzecinkowej.

9
Dlaczego dodawanie jest tak szybkie, jak operacje bitowe w nowoczesnych procesorach?
Wiem, że operacje bitowe są tak szybkie na nowoczesnych procesorach, ponieważ mogą działać równolegle na 32 lub 64 bitach, więc operacje bitowe zajmują tylko jeden cykl zegara. Jednak dodawanie jest złożoną operacją, która składa się z co najmniej jednej, a być może nawet kilkunastu operacji bitowych, więc naturalnie myślałem, że …

3
Algorytm czynnikowy jest bardziej wydajny niż naiwne mnożenie
Wiem, jak kodować silnie przy użyciu iteracji i rekurencji (np. n * factorial(n-1)Na przykład). Przeczytałem w podręczniku (bez dalszych wyjaśnień), że istnieje jeszcze bardziej wydajny sposób kodowania silni poprzez dzielenie ich na pół rekurencyjnie. Rozumiem, dlaczego tak może być. Chciałem jednak spróbować napisać go samodzielnie i nie sądzę, że wiem …

6
Matematyka związana z konwersją z dowolnej bazy na dowolną bazę bez przechodzenia przez bazę 10?
Patrzyłem na matematykę dotyczącą konwersji z dowolnej bazy na dowolną bazę. Chodzi bardziej o potwierdzenie moich wyników niż cokolwiek innego. Znalazłem moją odpowiedź na mathforum.org, ale nadal nie jestem pewien, czy mam rację. Mam konwersję z większej bazy na mniejszą bazę w porządku, ponieważ jest to po prostu pierwsza cyfra …

2
Dlaczego typ pustki C nie jest analogiczny do typu pusta / dolna?
Wikipedia, jak również inne źródła, które znalazłem, wskazują voidtyp C jako typ jednostki, a nie typ pusty. Uważam to za mylące, ponieważ wydaje mi się, że voidlepiej pasuje do definicji typu pustego / dolnego. voidO ile wiem, nie zamieszkują żadnych wartości . Funkcja z typem zwracanym void określa, że ​​funkcja …
28 type-theory  c  logic  modal-logic  coq  equality  coinduction  artificial-intelligence  computer-architecture  compilers  asymptotics  formal-languages  asymptotics  landau-notation  asymptotics  turing-machines  optimization  decision-problem  rice-theorem  algorithms  arithmetic  floating-point  automata  finite-automata  data-structures  search-trees  balanced-search-trees  complexity-theory  asymptotics  amortized-analysis  complexity-theory  graphs  np-complete  reductions  np-hard  algorithms  string-metrics  computability  artificial-intelligence  halting-problem  turing-machines  computation-models  graph-theory  terminology  complexity-theory  decision-problem  polynomial-time  algorithms  algorithm-analysis  optimization  runtime-analysis  loops  turing-machines  computation-models  recurrence-relation  master-theorem  complexity-theory  asymptotics  parallel-computing  landau-notation  terminology  optimization  decision-problem  complexity-theory  polynomial-time  counting  coding-theory  permutations  encoding-scheme  error-correcting-codes  machine-learning  natural-language-processing  algorithms  graphs  social-networks  network-analysis  relational-algebra  constraint-satisfaction  polymorphisms  algorithms  graphs  trees 

6
Co jest najbardziej wydajne dla GCD?
Wiem, że algorytm Euclida jest najlepszym algorytmem do uzyskania GCD (wielkiego wspólnego dzielnika) listy dodatnich liczb całkowitych. Ale w praktyce możesz kodować ten algorytm na różne sposoby. (W moim przypadku zdecydowałem się na Javę, ale C / C ++ może być inną opcją). Potrzebuję użyć najbardziej wydajnego kodu w moim …




3
Złożoność czasowa dodawania
Wikipedia wymienia złożoność czasową dodawania jako , gdzie jest liczbą bitów.nnnnnnn Czy to sztywna teoretyczna dolna granica? Czy to tylko złożoność obecnie najszybszego znanego algorytmu. Chcę wiedzieć, ponieważ złożoność dodawania podkreśla wszystkie inne operacje arytmetyczne i wszystkie algorytmy, które ich używają. Czy teoretycznie niemożliwe jest uzyskanie algorytmu dodawania działającego w …

9
Reprezentują liczbę rzeczywistą bez utraty precyzji
Bieżący zmiennoprzecinkowy (zmiennoprzecinkowy ANSI C, podwójny) pozwala przedstawić przybliżoną liczbę rzeczywistą. Czy istnieje sposób na przedstawienie liczb rzeczywistych bez błędów ? Oto pomysł, który miałem, ale nie idealny. Na przykład 1/3 to 0.33333333 ... (podstawa 10) lub o.01010101 ... (podstawa 2), ale także 0,1 (podstawa 3) Czy dobrym pomysłem jest …


1
Dlaczego dokładność modułu zmiennoprzecinkowego ma znaczenie?
Większość dialektów Smalltalk implementuje obecnie naiwny niedokładny moduł pływający (fmod / reszta). Właśnie to zmieniłem, aby poprawić Squeak / Pharo i ewentualnie inne przestrzeganie standardów Smalltalk (IEEE 754, ISO / IEC 10967), tak jak już to zrobiłem w przypadku innych operacji zmiennoprzecinkowych. Jednak jeśli chodzi o przyjęcie tych zmian, spodziewam …
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.